DÜŞEYARA Parametrelerini Doğrulayarak Arama Sonucunu İyileştirme

DÜŞEYARA (VLOOKUP), bir tablonun en sol sütununda aradığınız değeri bulup aynı satırdaki başka bir sütundan sonuç getiren işlevdir. DÜŞEYARA parametrelerini doğrulamak, yani aranan değeri, tablo aralığını, sütun sırasını ve eşleşme türünü kontrol etmek, yanlış sonuçların ve #YOK hatalarının büyük bölümünü ortadan kaldırır. Bu sayfada dört parametrenin nasıl doğrulanacağını, en sık yapılan hataları ve bunların çözümlerini örneklerle bulabilirsiniz.

DÜŞEYARA parametreleri nelerdir ve nasıl doğrulanır​

DÜŞEYARA dört parametre alır ve sonucun doğruluğu bu parametrelerin her birinin doğru girilmesine bağlıdır. Söz dizimi şöyledir:
Excel formülü
=DÜŞEYARA(aranan_değer; tablo_dizisi; sütun_indis_sayısı; [aralık_bak])
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
Parametreleri tek tek şöyle doğrulayın:
  • aranan_değer: Aradığınız değerdir. Hücre başvurusu kullanmak, değeri formülün içine yazmaktan daha güvenlidir. Değerin tablodaki karşılığıyla aynı veri türünde (metin ya da sayı) olduğundan ve başında ya da sonunda fazladan boşluk bulunmadığından emin olun.
  • tablo_dizisi: Aramanın yapılacağı aralıktır. Aranan değer bu aralığın en sol sütununda bulunmalıdır. Aralığı $A$2:$C$50 gibi mutlak başvuruyla yazarsanız formülü aşağı kopyalarken aralık kaymaz.
  • sütun_indis_sayısı: Sonucun alınacağı sütunun, tablo_dizisinin içindeki sırasıdır. Sayma işlemi sayfanın A sütunundan değil, seçtiğiniz aralığın ilk sütunundan başlar ve ilk sütun 1 sayılır.
  • aralık_bak: Eşleşme türünü belirler. YANLIŞ (ya da 0) tam eşleşme, DOĞRU (ya da 1) yaklaşık eşleşme arar.
DÜŞEYARA her zaman soldan sağa doğru çalışır; sonuç sütunu aranan sütunun solundaysa işlev doğrudan kullanılamaz. Büyük ve küçük harf ayrımı yapmaz ve birden fazla eşleşme varsa yalnızca ilk bulduğu satırı döndürür.
Formülün bir bölümünü kontrol etmek için formül çubuğunda ilgili parçayı seçip F9 tuşuna basabilir, adım adım izlemek için Formüller > Formül Denetleme > Formülü Değerlendir (Formulas > Formula Auditing > Evaluate Formula) komutunu kullanabilirsiniz.

Tam eşleşme mi, yaklaşık eşleşme mi kullanmalısınız​

Dördüncü parametreyi boş bırakırsanız Excel DOĞRU kabul eder ve yaklaşık eşleşme yapar. Yaklaşık eşleşmede ilk sütunun küçükten büyüğe sıralı olması gerekir; sıralı değilse işlev hata vermeden yanlış bir satırı döndürebilir. Bu nedenle ürün kodu, sicil numarası, müşteri adı gibi birebir aranan değerlerde her zaman YANLIŞ yazın:
Excel formülü
=DÜŞEYARA(A2; $F$2:$H$20; 3; YANLIŞ)
=VLOOKUP(A2,$F$2:$H$20,3,FALSE)
Yaklaşık eşleşme ise dilimli hesaplamalarda işe yarar: prim oranı, vergi dilimi benzeri kademeler, not aralıkları gibi. Bu durumda işlev, aranan değerden büyük olmayan en yakın alt sınırı bulur ve o satırın değerini getirir. Aranan değer tablodaki en küçük değerden de küçükse sonuç #YOK hatası olur.
Tam eşleşmede metin aramalarında ? (tek karakter) ve * (herhangi sayıda karakter) joker karakterleri kullanılabilir; yaklaşık eşleşmede bu karakterlerin böyle bir işlevi yoktur.

Yanlış sonuç ve hata nedenleri için kontrol listesi​

DÜŞEYARA sonucu beklediğiniz gibi değilse şu noktaları sırayla kontrol edin:
  • #YOK: Aranan değer ilk sütunda bulunamamıştır. Yazım farkı, fazladan boşluk ya da sayı ile metin uyuşmazlığı en sık nedenlerdir. Metin olarak saklanan sayılar ile gerçek sayılar birbiriyle eşleşmez.
  • #BAŞV!: sütun_indis_sayısı, tablo_dizisindeki sütun sayısından büyüktür.
  • #DEĞER!: sütun_indis_sayısı 1'den küçüktür ya da aranan değer 255 karakterden uzundur.
  • Yanlış ama hatasız sonuç: Genellikle aralık_bak parametresi yazılmamış ya da DOĞRU bırakılmıştır. Bir diğer neden, aralığın ilk sütununda yinelenen değerler bulunmasıdır; işlev yalnızca ilk eşleşmeyi getirir.
  • Formül aşağı kopyalanınca bozuluyor: tablo_dizisi mutlak başvuruyla sabitlenmemiştir.
Hataları kullanıcıya göstermek istemezseniz DÜŞEYARA işlevini EĞERHATA (IFERROR) içine alabilirsiniz. Ancak bu yöntem hatanın nedenini gizler; önce parametreleri doğrulayıp ardından hata yönetimi eklemek daha doğrudur. Boşluk sorunları için KIRP (TRIM) işlevi aranan değeri temizlemeye yarar.

1. Tam eşleşmeyle ürün adı ve fiyat getirme​

Soldaki tabloda ürün kodları, adları ve birim fiyatlar yer alıyor. D sütununa yazdığınız koda göre ürün adını ve fiyatı getirmek için tam eşleşme (YANLIŞ) kullanılır. Ürün adı için E2 hücresine, fiyat için F2 hücresine formül yazılıp aşağı kopyalanır.
DÜŞEYARA Parametrelerini Doğrulayarak Arama Sonucunu İyileştirme
Formülünü incelemek için bir hücre seçin.
ABCDEF
1Ürün KoduÜrün AdıBirim FiyatAranan KodBulunan ÜrünBulunan Fiyat
2K-101Cam Bardak Seti189,90K-103Çelik Tencere1.299,00
3K-102Porselen Tabak245,00K-101Cam Bardak Seti189,90
4K-103Çelik Tencere1.299,00K-105Ahşap Kesme Tahtası149,00
5K-104Çaydanlık679,50
6K-105Ahşap Kesme Tahtası149,00
Ürün ListesiExcelDepo v1.0.0
D2 hücresindeki kod için E2 hücresi ürün adını (Çelik Tencere), F2 hücresi birim fiyatı (1.299,00) getirir. Her iki formülde de aranan değer tablonun ilk sütunundadır, tablo_dizisi $A$2:$C$6 olarak sabitlenmiştir ve son parametre YANLIŞ olduğu için yalnızca birebir eşleşen kod kabul edilir. Yalnızca sütun_indis_sayısı değişir: ürün adı için 2, fiyat için 3. Üçüncü satırdaki kod için sonuç Ahşap Kesme Tahtası ürünü ve 149,00 fiyatıdır.

2. Yaklaşık eşleşmeyle prim oranı bulma​

A:C sütunlarındaki dilim tablosu alt sınıra göre küçükten büyüğe sıralıdır. Personelin satış tutarına karşılık gelen oranı bulmak için son parametre DOĞRU yazılır. Bu kullanım yalnızca ilk sütun sıralıyken doğru çalışır.
DÜŞEYARA Parametrelerini Doğrulayarak Arama Sonucunu İyileştirme
Formülünü incelemek için bir hücre seçin.
ABCDEF
1Alt SınırDilimPrim OranıPersonelSatış TutarıUygulanan Oran
20Başlangıç0%Ayşe Demir42.500,000%
350.000Bronz2%Mehmet Kaya50.000,002%
4100.000Gümüş4%Elif Yıldız128.750,004%
5200.000Altın6%Can Şahin215.300,006%
6Zeynep Arslan99.999,002%
Prim DilimleriExcelDepo v1.0.0
F2 hücresi Ayşe Demir için %0 oranını getirir. Mehmet Kaya'nın satışı bir dilimin alt sınırına tam eşit olduğundan F3 hücresindeki oran %2 olur. Zeynep Arslan'ın satışı bir sonraki dilimin alt sınırının hemen altında kaldığı için F6 hücresi bir önceki dilimin oranını, yani %2 değerini verir. En yüksek dilimdeki Can Şahin için sonuç %6 olur. Bu örnekte YANLIŞ kullansaydınız, tutarlar alt sınırlarla birebir aynı olmadığı sürece #YOK hatası alırdınız.

3. Boşluklu girişleri temizleyip hataları yönetme​

Sicil numarasına göre ad soyad ve departman getiren tabloda, kullanıcıların yazdığı numaralarda fazladan boşluk ve küçük harf kullanımı olabilir. Bir sicil numarası ise tabloda hiç yoktur. Formüller aranan değeri KIRP ile temizler ve bulunamayan kayıtlar için EĞERHATA ile okunaklı bir mesaj gösterir.
DÜŞEYARA Parametrelerini Doğrulayarak Arama Sonucunu İyileştirme
Formülünü incelemek için bir hücre seçin.
ABCDEF
1Sicil NoAd SoyadDepartmanAranan SicilAd SoyadDepartman
2S-1001Hasan ÇelikMuhasebeS-1003Murat ÖztürkSatış
3S-1002Selin Aydınİnsan KaynaklarıS-1005 Emre PolatBilgi İşlem
4S-1003Murat ÖztürkSatışS-1009Kayıt yokKayıt yok
5S-1004Burcu KoçLojistiks-1001Hasan ÇelikMuhasebe
6S-1005Emre PolatBilgi İşlem
7S-1006Gül TekinSatın Alma
Sicil SorguExcelDepo v1.0.0
D3 hücresindeki sicil numarasının sonunda boşluk vardır; KIRP bu boşluğu temizlediği için E3 hücresi Emre Polat sonucunu verir. D5 hücresindeki numara küçük harfle yazılmıştır, ancak DÜŞEYARA büyük ve küçük harf ayrımı yapmadığından E5 hücresi Hasan Çelik sonucunu getirir. Tabloda bulunmayan S-1009 numarası için E4 hücresinde Kayıt yok mesajı görünür. EĞERHATA yalnızca hatayı gizlediği için, her satırda mesaj görüyorsanız önce parametreleri ve veri türlerini kontrol edin.

Sık sorulan sorular​

  • Dördüncü parametreyi yazmazsam ne olur? Excel yaklaşık eşleşme yapar. Tablo sıralı değilse yanlış sonuç alabilirsiniz; tam eşleşme gerekiyorsa YANLIŞ yazın.
  • DÜŞEYARA sola doğru arama yapabilir mi? Hayır. Aranan sütun her zaman tablo_dizisinin ilk sütunu olmalıdır. Sola bakmak için İNDİS ve KAÇINCI birlikte ya da Excel 365'te ÇAPRAZARA kullanılabilir.
  • Sütun ekleyince formül neden bozuluyor? sütun_indis_sayısı sabit bir sayıdır. Tablo aralığının içine sütun eklerseniz ya da silerseniz bu sayıyı güncellemeniz gerekir.
  • Aynı değerden birden fazla varsa hangisi gelir? Aralığın ilk sütununda yukarıdan aşağıya ilk bulunan satır döndürülür.

Kullanırken dikkat edin​

  • Dördüncü parametreyi boş bırakmayın: aralık_bak yazılmazsa Excel yaklaşık eşleşme yapar. Tam eşleşme isteyen çoğu iş için bu, hatasız görünen ama yanlış sonuçlar üretir. Alışkanlık olarak YANLIŞ yazın.
  • Tablo aralığını sabitleyin: Formülü aşağı kopyalarken aralık kaymasın diye tablo_dizisini $A$2:$C$50 gibi mutlak başvuruyla yazın. Veri eklenecekse aralığı Tablo (Ctrl+T) olarak biçimlendirmek, aralığın otomatik genişlemesini sağlar.
  • Sütun ekleyip silerken dikkat edin: sütun_indis_sayısı sabit bir sayıdır ve aralığın içine sütun eklendiğinde ya da silindiğinde kendiliğinden güncellenmez. Sonucu yanlış sütundan alabilirsiniz; bu tür tablolarda İNDİS ve KAÇINCI ya da ÇAPRAZARA daha dayanıklıdır.
  • Sayı ve metin uyuşmazlığına bakın: Bir tabloda 1001 sayı, diğerinde metin olarak saklanıyorsa eşleşme sağlanmaz. Hücrenin sol üst köşesindeki uyarı işaretinden sayıya dönüştürebilir ya da aranan değeri uygun biçime çevirebilirsiniz.
  • Sürüm farkı: Excel 365 ve Excel 2021'de ÇAPRAZARA (XLOOKUP) bulunur; sola doğru arama yapabilir, varsayılan olarak tam eşleşme arar ve bulunamadığında gösterilecek değeri parametre olarak alır. Eski sürümlerde DÜŞEYARA ve İNDİS ile KAÇINCI birlikteliği kullanılır.
  • İlgili konular:
    • ÇAPRAZARA: DÜŞEYARA'ya daha esnek bir alternatiftir.
    • İNDİS ve KAÇINCI: Sola doğru arama ve sütun sırasından bağımsız sonuç için kullanılır.
    • YATAYARA: Aynı mantıkla yatay tablolarda arama yapar.
    • EĞERHATA ve EĞERYOKSA: Hata değerlerini yönetmeye yarar; EĞERYOKSA yalnızca #YOK hatasını yakalar.
    • KIRP: Aranan değerdeki fazla boşlukları temizler.
    • Formülü Değerlendir: Formülü adım adım izleyerek hatanın yerini bulmanızı sağlar.
Örneklerdeki tabloları indirilebilir Excel dosyasında kendiniz de deneyebilirsiniz.
 

Ekli dosyalar

Son düzenleme:

Okuma Rehberi - Makale

Seviye
Başlangıç
Okuma süresi
2 dk okuma
Geri
Üst