Bu dosya, büyük veri listelerinde DÜŞEYARA (VLOOKUP) kullanırken hız sorununu azaltmak için kullanılabilecek bir yöntemi küçük bir örnekle gösterir. Yöntemde sıralı listede yaklaşık eşleşme (TRUE) ile arama yapılır, sonucun doğruluğu ise ayrı bir kontrolle sağlanır.
Dosyanın içeriği
Dosyada yalnızca Sayfa1 adlı bir sayfa vardır ve veriler B2:E10 aralığındadır.- B2:D3: Aranacak değerin bulunduğu küçük tablo. Başlıklar ID ve Soyadı, aranan ID değeri 10400'dür. Soyadı sütunu (D3) formülle doldurulur.
- B5:D10: Aramanın yapıldığı kaynak liste. ID ve Soyadı sütunlarında 10200 (Veli), 10300 (Hüseyin), 10400 (Hüsmen), 10500 (Mehmet) ve 10600 (Turhan) kayıtları yer alır. ID'ler küçükten büyüğe sıralıdır.
Kullanılan formüller
Dosyada tek formül vardır (D3 hücresi):=IF(VLOOKUP($B3,$B$6:$E$10,1,TRUE)=$B3,VLOOKUP($B3,$B$6:$E$10,3,TRUE), NA())- İlk DÜŞEYARA (VLOOKUP), 1. sütunda (ID) yaklaşık eşleşme ile arama yapar ve bulduğu ID değerini döndürür.
- EĞER (IF), bulunan ID ile aranan ID'nin birebir aynı olup olmadığını kontrol eder.
- Aynıysa ikinci DÜŞEYARA (VLOOKUP) aynı aralıktan 3. sütundaki değeri getirir. Aralık B:E olduğu için 3. sütun D sütununa, yani Soyadı bilgisine denk gelir.
- Aynı değilse YOKSAY (NA)() ile #N/A hatası verilir. Böylece yaklaşık eşleşmenin yanlış bir kayda gitmesi engellenir.
Nasıl kullanılır
- Kaynak listenizi ID sütununa göre küçükten büyüğe sıralayın. TRUE ile yaklaşık eşleşme, yalnızca sıralı listede doğru çalışır.
- B3 hücresine aramak istediğiniz ID değerini yazın.
- D3 hücresindeki formülü kendi verinize göre uyarlayın; $B$6:$E$10 aralığını kaynak listenizin aralığıyla değiştirin.
- Sonuç olarak ilgili soyadı gelir. ID listede yoksa #N/A görürsünüz.