UserForm"a her veri eklediğimde Satırın başına otomatik Numara versin

Katılım
27 Şubat 2023
Mesajlar
37
Excel Vers. ve Dili
2016-TR
Herkese merhaba. Çok zorlandığım bir şeyi sormak istiyorum.



Gördüğünüz formdaki textboxlara değerleri giriyorum ve ardından ''ekle ve devam et'' command butonuna tıklıyorum (Bu buton formun hemen sağ tarafında). Ok işaretiyle gösterdiğim gibi her ekle ve devam et dediğimde otomatik olarak bir sonraki sayıyı ssh numarası olarak veriyor ve alt satıra geçiyor. Fakat arada gördüğünüz iki iki boş satır olunca ve ben forma bilgileri girip ekle ve devam et dediğimde mavi ile işaretlediğim kutucuktaki verileri değiştiyor. Oysa ben her ekle ve devam et dediğimde en aşağıda hangi satır varsa onun bir altına geçip devam etmesini istiyorum. Mesela size attığım görüntüde mavi ile işaretlediğim yere 10 sayısını vermiş. Ben ekle ve devam et dediğimde onun bir altına 11 olarak devam etsin. Ama alt satıra geçmiyor. Gördüğünüz 10'u 11 yapıyor. Kodum aşağıda:

Private Sub cbkayiteklevedevamet_Click()
i = WorksheetFunction.CountA(Sayfa1.Range("A:A")) + 1
Sayfa1.Cells(i, 1) = WorksheetFunction.Max(Sayfa1.Range("A:A")) + 1
Sayfa1.Cells(i, 2) = txtkayitsshinalindigitarih.Text
Sayfa1.Cells(i, 3) = txtkayitsshcarisi.Text
Sayfa1.Cells(i, 4) = txtkayitsshkonusu.Text
Sayfa1.Cells(i, 5) = txtkayitnot.Text
Sayfa1.Cells(i, 6) = txtkayiteknot.Text
Sayfa1.Cells(i, 7) = txtkayitkayittarihi.Text

End Sub

Nasıl düzeltebilirim? Çok teşekkürler.
 

Mdemir63

Altın Üye
Katılım
7 Temmuz 2006
Mesajlar
2,860
Excel Vers. ve Dili
Ofis2010 32Bit Türkçe
Altın Üyelik Bitiş Tarihi
19-02-2026
Selamlar
Sayın: @leylabalse
Bu kadar görsel olarak anlatmak yerine, Örnek bir dosya ekleyerek yapmak istediğinizi orada belirtseniz çok daha çabuk ve verimli sonuçlar alırsınız.
 

Greenblacksea53

Altın Üye
Katılım
5 Ocak 2019
Mesajlar
572
Excel Vers. ve Dili
Ofis 365 Tr
Altın Üyelik Bitiş Tarihi
05-01-2025
Herkese merhaba. Çok zorlandığım bir şeyi sormak istiyorum.



Gördüğünüz formdaki textboxlara değerleri giriyorum ve ardından ''ekle ve devam et'' command butonuna tıklıyorum (Bu buton formun hemen sağ tarafında). Ok işaretiyle gösterdiğim gibi her ekle ve devam et dediğimde otomatik olarak bir sonraki sayıyı ssh numarası olarak veriyor ve alt satıra geçiyor. Fakat arada gördüğünüz iki iki boş satır olunca ve ben forma bilgileri girip ekle ve devam et dediğimde mavi ile işaretlediğim kutucuktaki verileri değiştiyor. Oysa ben her ekle ve devam et dediğimde en aşağıda hangi satır varsa onun bir altına geçip devam etmesini istiyorum. Mesela size attığım görüntüde mavi ile işaretlediğim yere 10 sayısını vermiş. Ben ekle ve devam et dediğimde onun bir altına 11 olarak devam etsin. Ama alt satıra geçmiyor. Gördüğünüz 10'u 11 yapıyor. Kodum aşağıda:

Private Sub cbkayiteklevedevamet_Click()
i = WorksheetFunction.CountA(Sayfa1.Range("A:A")) + 1
Sayfa1.Cells(i, 1) = WorksheetFunction.Max(Sayfa1.Range("A:A")) + 1
Sayfa1.Cells(i, 2) = txtkayitsshinalindigitarih.Text
Sayfa1.Cells(i, 3) = txtkayitsshcarisi.Text
Sayfa1.Cells(i, 4) = txtkayitsshkonusu.Text
Sayfa1.Cells(i, 5) = txtkayitnot.Text
Sayfa1.Cells(i, 6) = txtkayiteknot.Text
Sayfa1.Cells(i, 7) = txtkayitkayittarihi.Text

End Sub

Nasıl düzeltebilirim? Çok teşekkürler.
kaydet butonunuza ekleyin
C++:
Private Sub cbkayiteklevedevamet_Click()


    Dim lastRow As Long
    ' Excel'in son satırını alın

if Me.Tsshnotextadınız.Value="" then
exit sub
end if

    lastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
    ' TextBox değerini Excel'in son satırına yazın
    ActiveSheet.Cells(lastRow, 1).Value = Me.Tsshnotextadınız.Value
    ActiveSheet.Cells(lastRow, 2).Value = txtkayitsshinalindigitarih.value
    ActiveSheet.Cells(lastRow, 3).Value = txtkayitsshcarisi.value
    ActiveSheet.Cells(lastRow, 4).Value =txtkayitsshkonusu.value
    ActiveSheet.Cells(lastRow, 5).Value =txtkayitnot.value
    ActiveSheet.Cells(lastRow, 6).Value =txtkayiteknot.value
   ActiveSheet.Cells(lastRow, 7).Value =txtkayitkayittarihi.value

    ' TextBox değerini temizleyin
    Me.Tsshnotextadınız = ""

For i = 1 To lastRow
        ActiveSheet.Cells(i, 1).Value = i
    Next i
End Sub

NOT:
Me.Tsshnotextadınız.Value buralara sizin text adınız ne ise o gelecek.

For döngüsü ile A sütunuzdaki numaraları sıralı yapacak bilginize
 
Üst