Listbox içinde arama

Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Selamlar,
Listbox ta iki sütuna göre arama yapmak mümkün müdür? Yardımcı olur musnuz?
 

Ekli dosyalar

Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Lütfen yardımcı olur musunuz?
 

cems

Altın Üye
Katılım
2 Eylül 2005
Mesajlar
2,501
Excel Vers. ve Dili
office 2010 tr 32bit
Altın Üyelik Bitiş Tarihi
13-06-2029
Listbox olanı göstermek için kullanılan pasif bir araçtır. Olan ise ; sayfadadır, sayfada işlem yapılır ve son hal listboxa yansıtılır.

Bu nedenle aramayı sayfa üzerinden düşünün
 

Mahmut Bayram

Özel Üye
Katılım
25 Haziran 2005
Mesajlar
1,778
Excel Vers. ve Dili
2016 Excel Tr
2 sütun yerine bağımsız olan TC den arama yaptırabilirsiniz kanaatindeyim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,335
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Önerilere kulak verin.

Ek olarak kullandığınız kodlarda yapı hataları var. Forumdaki örnek çalışmaları incelemeniz gerekiyor.

Arama için aşağıdaki kodu deneyebilirsiniz. ADI sütununa göre arama yapar. İsteğe göre revize edilebilir.

Kod:
Private Sub ComboBox2_Change()
    Dim Son As Long, Say As Long, Veri As Range, Aranan, Kriter
    
    If ComboBox2 = "" Then
        Son = Sheets("deneme").Range("A" & Rows.Count).End(3).Row
        ListBox1.ColumnCount = 6
        ListBox1.ColumnWidths = "20;40;40;0;0;0"
        ListBox1.RowSource = "deneme!A2:G" & Son
    Else
        Son = Sheets("deneme").Range("A" & Rows.Count).End(3).Row
        ListBox1.RowSource = ""
        ListBox1.Clear
        ListBox1.ColumnCount = 6
        ListBox1.ColumnWidths = "20;40;40;0;0;0"
        For Each Veri In Sheets("deneme").Range("B2:B" & Son)
            Aranan = UCase(Replace(Replace(ComboBox2, "ı", "I"), "i", "İ"))
            Kriter = UCase(Replace(Replace(Left(Veri, Len(ComboBox2)), "ı", "I"), "i", "İ"))
            If Kriter = Aranan Then
                ListBox1.AddItem
                ListBox1.List(Say, 0) = Veri.Offset(0, -1).Value
                ListBox1.List(Say, 1) = Veri.Value
                ListBox1.List(Say, 2) = Veri.Offset(0, 1).Value
                Say = Say + 1
            End If
        Next
    End If
End Sub
 
Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Tavsiyeleriniz ve çözümleriniz için teşekkürler...
 

Mahmut Bayram

Özel Üye
Katılım
25 Haziran 2005
Mesajlar
1,778
Excel Vers. ve Dili
2016 Excel Tr
Ekteki dosyayı inceler misiniz?
Programınıza uyarlayabilirseniz aradığınız bu olabilir.
 

Ekli dosyalar

Son düzenleme:
Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Allah razı olsun Mahmut Bey. Tam da istediğim çalışma bu... Sizin kadar bilgiye sahip değilim.. Yardımcı olabilir misiniz?
 
Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Yardımcı olur musunuz?
 

Mahmut Bayram

Özel Üye
Katılım
25 Haziran 2005
Mesajlar
1,778
Excel Vers. ve Dili
2016 Excel Tr
Sayın xemdarx malesef yardımcı olamayacağım o kadar engin bilgi sahibi değilim.
Saygılarımla.
 
Katılım
11 Şubat 2010
Mesajlar
202
Excel Vers. ve Dili
13 türkçe
Altın Üyelik Bitiş Tarihi
21-01-2022
Doğrudur. Benden fazla bilgiye sahip olmanız, engin bilgiye sahip olduğunuz anlamına gelmez...Selametle
 
Üst