Listbox'a Şarta Bağlı Olarak Veri Listeleme

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
676
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba arkadaşlar,
Aşağıdaki kod ile Combobox1 de Ay isimleri var. Verilerimin olduğu "Sayfa1" sayfasının U sütununun 45. satırından itibaren karışık olarak ay isimleri var. Combobox1 den seçilen ay ismi hangi satırlarda var ise o satırların sırasıyla, b, ı, m, n, o, p, q sütunlarındaki verileri listbox1 e listelemek istiyorum. Bu haliyle Mesela Combo1 den "Ocak" ayını seçiyorum. hiç tepki vermiyor. Hata bile vermiyor. Yardımcı olursanız sevinirim.


Private Sub CommandButton3_Click()
With ListBox1
.ColumnCount = 7
.ColumnWidths = "120;45;35;70;45;32;60"
End With
'listboxu temizliyoruz
ListBox1.Clear
'U sütununun son satırına kadar döngü kuruyoruz
For suz = 45 To WorksheetFunction.CountA([u45:u65536])
'büyük küçük harf duyarlı olması için işlem yaptırıyoruz
alan = UCase(Replace(Replace(Range("u" & suz), "ı", "I"), "i", "İ"))
veri = UCase(Replace(Replace(ComboBox1, "ı", "I"), "i", "İ"))
'U sütun verileri ile combodaki veriyi karşılaştırma yapıyoruz
If alan Like "*" & Sayfa1 & "*" Then
'koşul oluştuğunda verileri listboxa aldırıyoruz
ListBox1.AddItem
'listboxa ilgili sütunlardaki verileri aldırıyoruz
ListBox1.List(s, 0) = Range("b" & suz)
ListBox1.List(s, 1) = Range("l" & suz)
ListBox1.List(s, 2) = Range("m" & suz)
ListBox1.List(s, 3) = Range("n" & suz)
ListBox1.List(s, 4) = Range("o" & suz)
ListBox1.List(s, 5) = Range("p" & suz)
ListBox1.List(s, 6) = Range("q" & suz)
's değişkenine + 1 atıyoruz
s = s + 1
'eğer son
End If
'döngü sonu
Next
End Sub
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,655
Excel Vers. ve Dili
Microsoft 365 Tr-64
Birinci gördüğüm
For suz = 45 To WorksheetFunction.CountA([u45:u65536])

Aşağıdaki gibi yaparak denermisin
For suz = 45 To 44+ WorksheetFunction.CountA([u45:u65536])

WorksheetFunction.CountA([u45:u65536])
işlemi 45.satırdan itibaren sayıyor. Mesela 54'e kadar veri varsa sonuç 10 olur ve sizin for döngünüz
For suz=45 to 10 şeklini alarak direkt döngüyü sonlandırır

İkinci gördüğüm
'U sütun verileri ile combodaki veriyi karşılaştırma yapıyoruz
If alan Like "*" & Sayfa1 & "*" Then
demişsiniz ama alan ve veri yi karşılaştırmamışınız.

If instr(1,alan,veri)>0 Then
olmalı diye düşünüyorum

Edit...Konu test alanında açılmış. Farkedemedim.
 

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
676
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
Altın Üyelik Bitiş Tarihi
15-10-2026
Merhaba Ömer Faruk Bey.
Bilgisayar işyerinde olduğu için ancak bugün cevap verebiliyorum, bu yüzden kusura bakmayın.
Vermiş olduğunuz kodlarla sorun çözüldü. Teşekkür ederim.
 
Üst