CengizYurek
Altın Üye
- Katılım
- 11 Ocak 2017
- Mesajlar
- 46
- Excel Vers. ve Dili
- 2019-TR
- Altın Üyelik Bitiş Tarihi
- 01-01-2026
Merhabalar
15060 satır ve 9 sütunda verinin bulunduğu excel sayfamda VBA ile sorgulama yapıyorum. Arama sonucu listboxta seçtiğim bilgiye denk gelen hücreleri de ekrana yansıtıyorum. Ancak ekrana yansıtmam gereken 7 veriyi tümden yansıtınca vba, excel donuyor kapanıyor.
2 veya 3 veri yansıttığımda ise çok yavaşta olsa çalışıyor. Listcount sayısını arttırdıkça uygulama donuyor.
Fakat sorgulama değilde ayrı bir sayfada aynı verileri aynı sayıda listbox ve textbox ile listelediğimde hiçbir donma olmuyor.
Kodlarımı aşağı bırakıyorum. Lütfen Yardımcı olur musunuz ?
Türkçe Offc19 kullanıyorum.
15060 satır ve 9 sütunda verinin bulunduğu excel sayfamda VBA ile sorgulama yapıyorum. Arama sonucu listboxta seçtiğim bilgiye denk gelen hücreleri de ekrana yansıtıyorum. Ancak ekrana yansıtmam gereken 7 veriyi tümden yansıtınca vba, excel donuyor kapanıyor.
2 veya 3 veri yansıttığımda ise çok yavaşta olsa çalışıyor. Listcount sayısını arttırdıkça uygulama donuyor.
Fakat sorgulama değilde ayrı bir sayfada aynı verileri aynı sayıda listbox ve textbox ile listelediğimde hiçbir donma olmuyor.
Kodlarımı aşağı bırakıyorum. Lütfen Yardımcı olur musunuz ?
Türkçe Offc19 kullanıyorum.
Kod:
Private Sub ilacaralist_Change()
'// Arama kutusu
Dim i As Long
Dim a As Long
Dim ilaclst As Variant
Dim sonsatir As Integer
ilaclistefrm.Clear
sonsatir = Sheets("ilaclar").Range("A15060").End(xlUp).Row
If Sayfa5.Range("A" & sonsatir).Row > 1 And Trim(ilacaralist.Value) <> "" Then
ilaclst = Sheets("ilaclar").Range("A2:A" & sonsatir).Value
For i = LBound(ilaclst) To UBound(ilaclst)
If InStr(1, ilaclst(i, 1), Trim(ilacaralist.Value), vbTextCompare) Then
ilaclistefrm.AddItem ilaclst(i, 1)
For a = i To i + 1
ilaclistefrm.List(ilaclistefrm.ListCount - 1, 1) = Sayfa5.Range("B" & a)
ilaclistefrm.List(ilaclistefrm.ListCount - 1, 2) = Sayfa5.Range("C" & a)
ilaclistefrm.List(ilaclistefrm.ListCount - 1, 3) = Sayfa5.Range("D" & a)
'// ilaclistefrm.List(ilaclistefrm.ListCount - 1, 4) = Sayfa5.Range("E" & a)
'// ilaclistefrm.List(ilaclistefrm.ListCount - 1, 5) = Sayfa5.Range("F" & a)
'// ilaclistefrm.List(ilaclistefrm.ListCount - 1, 6) = Sayfa5.Range("G" & a)
Next
End If
Next
End If
'// Arama kutusu boş ise
If ilacaralist = "" Then
ilaclistefrm.List = Sheets("ilaclar").Range("A2:I15060").Value
End If
End Sub