ListBox ve ComboBox'taki boşluklar

Katılım
17 Ocak 2006
Mesajlar
115
Excel Vers. ve Dili
Excel 2003 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2020
Merhaba arkadaşlar.
ListBox'a Sayfa1 deki B1 ile B125 arasındaki hücreleri RowSource ettim. Ancak bu hücrelerin hepsi dolu değil 15 tanesi dolu.
Sorum şu: LİstBox veya ComboBox'ta bu boşlukları göstermemek için ne yapabiliriz? Yardımlarınız için teşekkür ederim.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,334
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Merhaba,
Aşağıdaki gibi deneyin.
Kod:
Private Sub UserForm_Initialize()
For i = 1 To [b65536].End(3).Row
    If Cells(i, 2) = "" Then GoTo 10
    ListBox1.AddItem (Cells(i, 2))
10
Next
End Sub
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yine rowsource ile almak isterseniz aşağıdaki gibi en son dolu hücreyide tanıtabilirsiniz.

[vb:1:a6ed6be4cd]Private Sub UserForm_Initialize()
listbox1.rowsource="sayfa1!b1:b" & [sayfa1!b65536].end(3).row
End Sub[/vb:1:a6ed6be4cd]
 
Katılım
17 Ocak 2006
Mesajlar
115
Excel Vers. ve Dili
Excel 2003 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2020
Sayın anemos ilginize teşekkür ederim.
Kodlar çalışıyor istediğim gibi. Ancak bazı sorunlar var:
1.) Yeni kayıt yaptığımda formu kapatıp açmazsam yeni kayıdı eklemiyor.
2.) kayıtlı bir veriyi sildiğimde de yine formu kapatıp açmazsam hala o veriyi gösteriyor.
Kaydet tuşunu son satırına "call Userform_Initialize" şeklinde kod yazdım ama çalışmadı. Ne yapabilrim? Tekrar teşekkür ederim.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,334
Excel Vers. ve Dili
Office 2019 (64 bit) - Türkçe
Formunuza bir buton ekleyin ve aşağıdaki kodu ilave edin.
Kod:
Private Sub CommandButton1_Click()
ListBox1.Clear
UserForm_Initialize
End Sub
 
Katılım
17 Ocak 2006
Mesajlar
115
Excel Vers. ve Dili
Excel 2003 Türkçe
Altın Üyelik Bitiş Tarihi
02-07-2020
Sayın Leventm sizin cevabınızı yeni gördüm ve denedim çalışıyor. İstediğim gibi. Biraz önce belirttiğim "call Userform_Initialize" kodu da çalışıyor. Biraz önce sayın anemos'un kodunu denerken bu satırı başka bir yere yazmışım.
sayın anemos ve levenm sizlere çok teşekkür ederim. :hey: :mutlu:
 
Üst