listview da stabil hızlı bir arama şekli

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025
hayırlı geceler listview dosyamı ekledim uzun verilerde stabil arama yapabileceğim bir kod yardımlarınızı bekliyorum :)
 

Ekli dosyalar

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025
Dizi yöntemi ile başlık ve arama seçenekli yapılan çalışma , çeşitlilik olur.
Ziynettin bey buda tek kelime ile süper olmuş çok teşekkür ederim emeğinize sağlık değişik bi arayüz sizden çok rica etsem aynısı birde listbox için yaparmısınız lütfen müsait olunca ?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,284
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Userform üzerinde ListBox-ListView-TextBox ile arama teknikleri ile ilgili bol örnekli bir başlık oldu.

Proje aşamasında olan üyelerimiz için iyi bir kaynak olacaktır diye düşünüyorum.
 

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,508
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Çok güzel örnekler.. :)

Ben de ufak bir ekleme yapayım..
ADO örneğini bu şekilde biraz daha hızlandırabiliriz..
C++:
Private Sub TextBox2_Change()
    Dim con As Object, rs As Object, a%
    Set con = CreateObject("adodb.connection")
    con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
    ThisWorkbook.FullName & ";extended properties=""excel 12.0;hdr=yes"""
    With ListView1
        .ListItems.Clear
        Set rs = con.Execute("select * from [Personeller$] where [ADI] like '" & TextBox2.Text & "%'")
        On Local Error Resume Next
        Do While Not rs.EOF
            .ListItems.Add , , rs.Fields(0).Value
                For a = 1 To rs.Fields.Count - 1
                    .ListItems(.ListItems.Count).ListSubItems.Add , , rs.Fields(a).Value
                Next a
            rs.MoveNext
        Loop
    End With
End Sub
 

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025
Murat bey teşekkür ederim Harika örnekler herkese ilgiisinden dolayı çok teşekkür ederim acemi bir Excel meraklısı olarak
 

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025
Çok güzel örnekler.. :)

Ben de ufak bir ekleme yapayım..
ADO örneğini bu şekilde biraz daha hızlandırabiliriz..
C++:
Private Sub TextBox2_Change()
    Dim con As Object, rs As Object, a%
    Set con = CreateObject("adodb.connection")
    con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
    ThisWorkbook.FullName & ";extended properties=""excel 12.0;hdr=yes"""
    With ListView1
        .ListItems.Clear
        Set rs = con.Execute("select * from [Personeller$] where [ADI] like '" & TextBox2.Text & "%'")
        On Local Error Resume Next
        Do While Not rs.EOF
            .ListItems.Add , , rs.Fields(0).Value
                For a = 1 To rs.Fields.Count - 1
                    .ListItems(.ListItems.Count).ListSubItems.Add , , rs.Fields(a).Value
                Next a
            rs.MoveNext
        Loop
    End With
End Sub
Bende hata verdi murat bey
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,284
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Şu bölümü;

hdr=yes

Aşağıdaki gibi değiştirip deneyiniz.

hdr=no
 

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025
Şu bölümü;

hdr=yes

Aşağıdaki gibi değiştirip deneyiniz.

hdr=no
Set rs = con.Execute("select * from [Personeller$] where [ADI] like '" & TextBox2.Text & "%'")
burda hata verdi
run time error gerekli bir yada daha fazla parametre için girilen değer yok
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,284
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
O satırı da şu şekilde düzeltiniz.

Set rs = con.Execute("select * from [Personeller$] where F2 like '" & TextBox2.Text & "%'")
 

Cengizhantr06

Altın Üye
Katılım
16 Mayıs 2020
Mesajlar
301
Excel Vers. ve Dili
Office 365 Türkçe
Altın Üyelik Bitiş Tarihi
18-05-2025

Ekli dosyalar

Üst