• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

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

ahmed_ummu

Altın Üye
Katılım
28 Mart 2011
Mesajlar
777
Excel Vers. ve Dili
Excel 2010 Professional Plus 64 Bit
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
 
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.
 
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.
 
Geri
Üst