• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Çözüldü Userform Initiliaze de otomatik sıra no getirme

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Hcey40

Yeni Üye
Katılım
22 Eyl 2023
Mesajlar
18
Aldığı beğeni
3
Excel V
Office 2010 TR
Konu Sahibi
Merhaba ekteki dosyada TextBox1 e otomatik sıra numarası gelmesini istiyorum ama kodlamayı başaramadım. Yardımcı olabilecek kimse olur mu? Teşekkürler
 
Çözüm
Formun Initialize olayına aşağıdaki kodları yazın.

Dim saT As Long
saT = Worksheets("sayfa1").Range("a" & Rows.Count).End(3).Row
UserForm1.TextBox1.Value = 230000 + saT

ComboBox a TextBox1 adı vermek de neyin nesi anlamadım ama
TextBox1 adlı ComboBox ın Change olayındaki kodları
TextBox1 adlı ComboBox ın Click olayına alın.
Sonra TextBox1 adlı ComboBox ın Change olayındaki kodları silin.

KAYDET butonunda
.End(3)(2, 1).Value = TextBox1.Value satırına 1 ekleyin.
yani aşağıdaki gibi olacak.

.End(3)(2, 1).Value = TextBox1.Value + 1

Dosyanız tam bir karmaşa.
Bu karmaşadan çözebildiğim ve anlayabildiğim şimdilik bu kadar.
Ve lütfen o comboboxlara doğru dürüst bir ad kullanın.
Kolay gelsin.
Selamlar

Formun Initialize olayına aşağıdaki kod yapıştırın
Form açıldığında son dolu satırın bir sonrasını verir

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.
 
Konu Sahibi
HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Şimdi Sayfa 1 deki FORM CommandButton a bastığımızda Userform açılırken a2 boş ise TextBox1 (SıraNo) 230001 ile ilk numaradan başlayacak. Kaydet e bastığımızda bir sonraki Sıra numarası 230002 olacak. Bu kodUseform Initiliaze kısmında yer alıyor ama çalışmıyor.

Sizlerin verdiği kodları da denedim ama olmadı maalesef.
 
Formun Initialize olayına aşağıdaki kodları yazın.

Dim saT As Long
saT = Worksheets("sayfa1").Range("a" & Rows.Count).End(3).Row
UserForm1.TextBox1.Value = 230000 + saT

ComboBox a TextBox1 adı vermek de neyin nesi anlamadım ama
TextBox1 adlı ComboBox ın Change olayındaki kodları
TextBox1 adlı ComboBox ın Click olayına alın.
Sonra TextBox1 adlı ComboBox ın Change olayındaki kodları silin.

KAYDET butonunda
.End(3)(2, 1).Value = TextBox1.Value satırına 1 ekleyin.
yani aşağıdaki gibi olacak.

.End(3)(2, 1).Value = TextBox1.Value + 1

Dosyanız tam bir karmaşa.
Bu karmaşadan çözebildiğim ve anlayabildiğim şimdilik bu kadar.
Ve lütfen o comboboxlara doğru dürüst bir ad kullanın.
Kolay gelsin.
 
Çözüm
Konu Sahibi
ComboBoxlara TextBox numarası vermemin nedeni Formdan Sayfa1 e kayıt yaparken TextBox1 den TextBox26 yakadar veriler satırdaki sütunlara yanyana kaydolmasının formül kolaylığı nedeniyleydi.


Şimdi UserForm açılınca sayı 230001 olarak otomatik geldi.
UseFormu doldurduktan sonra KAYDET (CommandButtun1) basınca kayıt başarılı ancak bu arada SIRA NO 230002 olması gerekirken 3 rakamı çıkıyor.

UserFormu tekrar açınca Sıra No 230002 olarak geliyor ki bu doğru. Ama KAYDET e basınca bu kez 4 rakamı çıkıyor. oysa 230003 gelmesi lazım.
Buradaki sıkıntıyı anlayamadım. Teşekkürler
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.
Geri
Üst