fenac
Yeni Üye
- Katılım
- 26 Eyl 2024
- Mesajlar
- 1
- Aldığı beğeni
- 0
- Excel V
- Office 2016 TR
Konu Sahibi
Merhaba arkadaşlar, projemde takıldığım bir makro sorunum var.
Stok takibi için bir UserForm tasarladım. Form açıldığında Q3_UserForm_Arama sekmesindeki veriler ListBox içine yükleniyor. Formun üstüne bir adet TextBox koydum ve kullanıcı buraya harf girdikçe ListBox'ın anlık (real-time) filtrelenmesini istiyorum.
Kodları TextBox1_Change olayına yazdım. Her harf girildiğinde sayfaya gidip Autofilter yapıyor ve sonuçları RowSource ile tekrar ListBox'a basıyor. Satır sayısı 10-15 bin olunca, TextBox'a her yazı yazıldığında Excel 1-2 saniye donuyor, akıcı bir yazma imkanı vermiyor. Bu arama işlemini sayfaya hiç dokunmadan, ham verileri form açılışında bir Variant Diziye (Array) alıp, TextBox'a yazıldığında sadece hafızada filtreleyerek ListBox.List özelliğine aktarmanın yolu nedir? Donmayı tamamen engelleyecek profesyonel bir kod mimarisi paylaşabilir misiniz?
Stok takibi için bir UserForm tasarladım. Form açıldığında Q3_UserForm_Arama sekmesindeki veriler ListBox içine yükleniyor. Formun üstüne bir adet TextBox koydum ve kullanıcı buraya harf girdikçe ListBox'ın anlık (real-time) filtrelenmesini istiyorum.
Kodları TextBox1_Change olayına yazdım. Her harf girildiğinde sayfaya gidip Autofilter yapıyor ve sonuçları RowSource ile tekrar ListBox'a basıyor. Satır sayısı 10-15 bin olunca, TextBox'a her yazı yazıldığında Excel 1-2 saniye donuyor, akıcı bir yazma imkanı vermiyor. Bu arama işlemini sayfaya hiç dokunmadan, ham verileri form açılışında bir Variant Diziye (Array) alıp, TextBox'a yazıldığında sadece hafızada filtreleyerek ListBox.List özelliğine aktarmanın yolu nedir? Donmayı tamamen engelleyecek profesyonel bir kod mimarisi paylaşabilir misiniz?