Basit bir userform

Katılım
12 Eylül 2020
Mesajlar
174
Excel Vers. ve Dili
365 ev
merhaba öncelikle, görüşmeye dair bilgileri kısaca not edebileceğim bir excel tablosu oluşturmaya çalışıyorum, basit bir userform tasarladım gerekli bir kaç bilgi girdikten sonra excel sayfasına kaydetmek istiyorum fakat, kaydet butonuna bastığımda hiçbir tepki vermiyor
Kod:
Private Sub CommandButton1_Click()
Dim sonsatir As Long

sonsatir = Sayfa3.Cells(Rows.Count, "a").End(xlUp).Row + 1
Sayfa3.Cells(sonsatir, 1) = Date
Sayfa3.Cells(sonsatir, 2) = ComboBox1.Text
Sayfa3.Cells(sonsatir, 7) = ComboBox2.Text
Sayfa3.Cells(sonsatir, 8) = ComboBox3.Text
Sayfa3.Cells(sonsatir, 10) = ComboBox4.Text
Sayfa3.Cells(sonsatir, 9) = TextBox2.Text

End Sub
nerede hata yapıyorum acaba
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba, kodda hata yok. Sayfa3 e kayıt yapar.
Başka bir sayfa üzerinde userformu çalıştırıyor olabilirsiniz.
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Sayfa3 dışında herhangi bir sayfa olabilir.
Örnek bir dosya paylaşmanız mümkün mü?
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Sayfayı tablo olarak biçimlendirdiğiniz için son satır tablonun bitiminden başlıyor.
Aşağıdaki kodlar ile değiştiriniz.
Kod:
Private Sub CommandButton1_Click()
Dim ws As Worksheet

Set ws = Sheets("ISLEMLER")
sonsatir = Cells(Rows.Count, "a").End(xlUp).Row

With ws
sonsatir = .Range("A2:A" & sonsatir).Find("", .Range("A" & sonsatir), xlValues, xlByRows, xlPrevious).Row
    .Cells(sonsatir, 1) = TextBox1.Text
    .Cells(sonsatir, 2) = ComboBox1.Text
    .Cells(sonsatir, 7) = ComboBox2.Text
    .Cells(sonsatir, 8) = ComboBox3.Text
    .Cells(sonsatir, 10) = ComboBox4.Text
    .Cells(sonsatir, 11) = ComboBox5.Text
    .Cells(sonsatir, 9) = TextBox2.Text
End With
End Sub
 
Katılım
12 Eylül 2020
Mesajlar
174
Excel Vers. ve Dili
365 ev
Sayfayı tablo olarak biçimlendirdiğiniz için son satır tablonun bitiminden başlıyor.
Aşağıdaki kodlar ile değiştiriniz.
Kod:
Private Sub CommandButton1_Click()
Dim ws As Worksheet

Set ws = Sheets("ISLEMLER")
sonsatir = Cells(Rows.Count, "a").End(xlUp).Row

With ws
sonsatir = .Range("A2:A" & sonsatir).Find("", .Range("A" & sonsatir), xlValues, xlByRows, xlPrevious).Row
    .Cells(sonsatir, 1) = TextBox1.Text
    .Cells(sonsatir, 2) = ComboBox1.Text
    .Cells(sonsatir, 7) = ComboBox2.Text
    .Cells(sonsatir, 8) = ComboBox3.Text
    .Cells(sonsatir, 10) = ComboBox4.Text
    .Cells(sonsatir, 11) = ComboBox5.Text
    .Cells(sonsatir, 9) = TextBox2.Text
End With
End Sub
hocam kod çalışıyor fakat biraz açıklayabilir misiniz?
Kod:
sonsatir = .Range("A2:A" & sonsatir).Find("", .Range("A" & sonsatir), xlValues, xlByRows, xlPrevious).Row
burayı anlayamadım
 
Üst