Bu dosya, muavin kayıtlarının tutulduğu büyük bir tablodan belirtilen iki tarih arasında kalan satırları ADO (ActiveX Data Objects) ile hızlıca süzüp ayrı bir sayfada listeler. Sorgu, hücre aralıkları döngüyle taranmadan SQL ile çalıştığı için yaklaşık 20 bin satırlık veride de hızlı sonuç verir.
Dosyanın içeriği
- data: Kaynak veri sayfasıdır (A1:J20508). Başlıklar arasında ANAKOD, TARIH ve BORC bulunur; kayıtlar Ocak 2014 tarihlidir.
- sorgu: Sorgu ekranıdır. E4 hücresine ilk tarih (örnekte 01.06.2017), G4 hücresine son tarih girilir.
- sorgu-raporu: Süzülen kayıtların listelendiği sayfadır. Başlık satırı hazır gelir; sonuçlar A2 hücresinden itibaren yazılır.
Makrolar
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir. Makrolar dosyanın kendi verisi üzerinde çalışır; dosya silme veya dışarıya bağlantı işlemi yapmaz.- Baglanti_Yap (baglanti modülü): Microsoft.ACE.OLEDB.12.0 sağlayıcısı ile çalışma kitabının kendisine ADODB bağlantısı açar. Excel 12.0, 14.0, 15.0 ve 16.0 sürümleri için aynı bağlantı dizesi kullanılır.
- SorguHazirla (Module1): Önce E4 ve G4 hücrelerini denetler. Tarihlerden biri boşsa veya geçerli tarih değilse uyarı verip ilgili hücreyi seçer. Denetimden sonra data sayfasında TARIH alanı iki tarih arasında olan kayıtları BETWEEN ile seçer, ANAKOD alanına göre azalan sıralar. Önceki sonuçları sorgu-raporu sayfasında A2:F aralığından temizleyip yeni kayıtları CopyFromRecordset ile yazar. Kayıt yoksa "Uygun şartlarda veri bulunamadı" uyarısı çıkar.
Nasıl kullanılır
- Dosyayı açıp makroları etkinleştirin.
- sorgu sayfasında E4 hücresine ilk tarihi, G4 hücresine son tarihi yazın.
- SorguHazirla makrosunu çalıştırın (Alt+F8 ile veya sayfadaki bir düğmeye atayarak).
- Sonuçlar sorgu-raporu sayfasında listelenir.
- Kendi verinizi kullanmak için kayıtları data sayfasına aynı başlıklarla yapıştırın.