Menu

#YOK Hatası: DÜŞEYARA ve ÇAPRAZARA Bulamadığında (#N/A)

#YOK, bir aramanın aradığı değeri bulamadığı anlamına gelir. Yazım hatalarını, fazla boşlukları ve formül aşağı doldurulurken kayan tablo aralığını denetleyin, sonra gerçekten eksik olan değerler için EĞERYOKSA ile bir mesaj gösterin.

Bu sayfadaki her tablo canlı: bir sayıyı ya da formülü değiştir, yeniden hesaplansın.

#YOK (İngilizce #N/A) "kullanılamıyor" demektir: DÜŞEYARA (İngilizce VLOOKUP), ÇAPRAZARA (İngilizce XLOOKUP) veya KAÇINCI (İngilizce MATCH) gibi bir arama aradığı değeri bulamamıştır. Aşağıda =DÜŞEYARA(E2;A2:B6;2;YANLIŞ) #YOK döndürür, çünkü Kiwi listede yoktur. E2'yi Pear yapın, 1.5 döndürür. Tablodaki formülleri de bu şekilde, Türkçe adlarla ve noktalı virgülle yazabilirsiniz.

Orada olmayan bir ürünü arama
F2
ABCDEF
1ProductPriceLook forPrice
2Apple1.2Kiwi#N/A
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#N/A Aradığın değer arama aralığında yok.Türkçe Excel’de: =DÜŞEYARA(E2;A2:B6;2;YANLIŞ)

Değer gerçekten eksikse #YOK doğru cevaptır ve EĞERYOKSA (aşağıda) onu bir mesaja çevirir. Düzeltmeye değer durumlar, değerin orada olduğu ve aramanın yine de başarısız olduğu durumlardır. Türkçe Excel bu hatayı #YOK olarak gösterir; tablo ise İngilizce adını, #N/A'yı gösterir. İkisi aynı hatadır.

Bir aramayı aşağı doldurduktan sonra #YOK

Gerçek sayfalardaki en yaygın neden: formül ilk satırda çalışır ve aşağıdaki bazı satırlar, ürünler listede olduğu halde #YOK gösterir.

$ işaretsiz tablo aralığı
F4
ABCDEF
1ProductPriceOrderPrice
2Apple1.2Apple1.2
3Pear1.5Plum0.8
4Plum0.8Pear#N/A
5Bread2.4Milk1.1
6Milk1.1Apple#N/A
#N/A Aradığın değer arama aralığında yok.Türkçe Excel’de: =DÜŞEYARA(E4;A4:B8;2;YANLIŞ)

F4'e tıklayın: tablo aralığı F2'ninkinden iki satır aşağıda, A4:B8'dir. Formülü aşağı doldurmak aralığı da onunla birlikte taşıdı, bu yüzden Pear (3. satır) ve Apple (2. satır) aralığın dışına düştü. F3 ve F5 yalnızca Plum ve Milk hâlâ aralıklarının içinde olduğu için çalışır. F2'ye tıklayın ve aralığı $A$2:$B$6 yapın: bütün sütun izler ve her fiyat görünür. $ işaretleri aralığı kilitler, bkz. mutlak başvurular.

Fazla boşluklar yüzünden #YOK

Sonunda boşluk olan "Pear " ile "Pear" Excel için farklı değerlerdir. Boşluklar elle yazılan, web sayfalarından kopyalanan veya başka sistemlerden dışa aktarılan verilerle gelir ve hücrede görünmezler.

Tabloda sonda bir boşluk
E2
ABCDEF
1ProductPriceLook forPriceLength of A2
2Pear 1.5Pear#N/A5
3Apple1.2
4Plum0.8
#N/A Aradığın değer arama aralığında yok.Türkçe Excel’de: =DÜŞEYARA(D2;A2:B4;2;YANLIŞ)

E2 #N/A döndürür. F2 nedeni gösterir: Pear 4 harftir, ama A2 5 karakter uzunluğundadır. A2'deki boşluğu silin, arama çalışır. Kalıcı olarak düzeltmenin üç yolu:

  • Sütunu temizleyin: bir yardımcı sütuna =KIRP(A2) yazın, aşağı doldurun, sonra onu kopyalayıp özgün sütunun üzerine Giriş > Yapıştır > Değerler yapın.
  • Boşluklar yazdığınız değerdeyse aranan değeri kırpın: =DÜŞEYARA(KIRP(D2);A2:B4;2;YANLIŞ).
  • Bütün arama sütununu formülün içinde kırpın (Excel 2021 veya Microsoft 365): =ÇAPRAZARA(D2;KIRP(A2:A4);B2:B4).

Web sayfalarından yapıştırılan metin, KIRP'ın kaldırmadığı bölünemez bir boşluk içerebilir. KIRP sayfası onu YERİNEKOY(A2;DAMGA(160);" ") ile nasıl değiştireceğinizi gösteriyor.

Değer ilk sütunda değilse #YOK

DÜŞEYARA yalnızca aralığının ilk sütununda arar ve onun sağındaki bir sütunu döndürür. Başka bir sütundaki bir değeri aramak, değer tabloda olsa bile #YOK döndürür.

Koda göre arama
F2
ABCDEFG
1ProductCodePriceCodeVLOOKUPXLOOKUP
2AppleA-171.2P-22#N/APear
3PearP-221.5
4PlumP-310.8
5BreadB-052.4
6MilkM-401.1
#N/A Aradığın değer arama aralığında yok.Türkçe Excel’de: =DÜŞEYARA(E2;A2:C6;1;YANLIŞ)

Kodlar B sütunundadır, bu yüzden A2:C6 üzerindeki DÜŞEYARA P-22'yi ürün adları arasında arar ve başarısız olur. Kodun önünde duran ürün adını da döndüremez. ÇAPRAZARA arama sütununu ve döndürülecek sütunu ayrı ayrı alır ve Pear'ı bulur. Excel 2019 ve öncesinde =İNDİS(A2:A6;KAÇINCI(E2;B2:B6;0)) aynı işi yapar.

Metin olarak saklanan sayılardan #YOK

Metin olarak yazılmış ('1001 ya da bir CSV'den içe aktarılmış) bir sipariş numarası 1001 sayısıyla hiçbir zaman eşleşmez, tersi de öyle. İki hücre de 1001 gösterir, bu yüzden bunu görmek zordur. Excel'de:

A2:B6 holds order numbers stored as text, E2 holds the number 1001
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(E2&"",A2:B6,2,FALSE)       found: E2&"" turns the number into text

A2:B6 holds real numbers, E2 holds "1001" as text
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(--E2,A2:B6,2,FALSE)        found: -- turns the text into a number

Türkçe Excel'de iki düzeltme =DÜŞEYARA(E2&"";A2:B6;2;YANLIŞ) ve =DÜŞEYARA(--E2;A2:B6;2;YANLIŞ) olarak yazılır.

=EMETİNSE(A2) hangi tarafın metin olduğunu söyler; hücrenin köşesindeki küçük yeşil üçgen de metin olarak saklanmış bir sayıyı işaretler. Bütün bir sütunu çevirmek için bkz. metni sayıya çevirme.

EĞERYOKSA veya EĞERHATA: hiçbir şey bulunamadığında bir mesaj gösterme

Bir değer haklı olarak eksik olabiliyorsa #YOK'tan daha yararlı bir şey gösterin. EĞERHATA değil, EĞERYOKSA (İngilizce IFNA) kullanın:

Bozuk bir aramanın çevresinde EĞERYOKSA ve EĞERHATA
F2
ABCDEFG
1ProductPriceLook forIFNAIFERROR
2Apple1.2Pear#REF!Not found
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#REF! Formül var olmayan bir hücreyi gösteriyor.Türkçe Excel’de: =EĞERYOKSA(DÜŞEYARA(E2;A2:B6;3;YANLIŞ);"Not found")

İki formül de iki sütunlu bir aralığın 3. sütununu ister; bu bir hatadır. EĞERYOKSA #REF! hatasının (Türkçe Excel'de #BAŞV!) geçmesine izin verir, böylece yanlışı görürsünüz. EĞERHATA (İngilizce IFERROR) onu gizler ve listede olan Pear için "Not found" der. İki 3'ü de 2 yapın: şimdi ikisi de 1.5 gösterir, E2 Kiwi iken de ikisi de "Not found" gösterir. ÇAPRAZARA'da mesaj yerleşiktir: =ÇAPRAZARA(E2;A2:A6;B2:B6;"Not found"). Farkın ayrıntıları EĞERHATA sayfasında.

Boşlukların bozduğu bir aramayı düzeltme

Boşluklara rağmen fiyatı bulma
F2
ABCDEF
1ProductPriceLook forPrice
2Apple 1.2Plum
3Pear 1.5
4Plum 0.8
5Bread 2.4
6Milk 1.1
Formülünü görmek için bir hücreye tıkla. Bir sayıyı ya da formülü değiştir, tablo yeniden hesaplanır.

Sıra sende: Listedeki her ürün sonunda bir boşlukla içe aktarıldı, bu yüzden =VLOOKUP(E2,A2:B6,2,FALSE) #N/A döndürür. F2 hücresine E2'deki ürünün fiyatını yine de döndüren bir formül yazın.

=ÇAPRAZARA(E2;KIRP(A2:A6);B2:B6) listeyi formülün içinde kırpar. =DÜŞEYARA(E2&" ";A2:B6;2;YANLIŞ) de burada çalışır, ama yalnızca her ürünün sonunda tam olarak bir boşluk olduğu sürece; kalıcı çözüm sütunu KIRP ile temizlemektir.

Sıkça Sorulan Sorular

Excel'de #YOK ne anlama gelir?

#YOK (İngilizce #N/A) "kullanılamıyor" demektir. Bir arama fonksiyonunun (DÜŞEYARA, YATAYARA, ÇAPRAZARA, KAÇINCI, ÇAPRAZEŞLEŞTİR) kendisine verilen değeri bulamadığı anlamına gelir. =YOKSAY() da onu bilerek döndürür, örneğin bir grafik bir noktayı 0 olarak çizmek yerine atlasın diye.

Değer varken DÜŞEYARA neden #YOK döndürüyor?

İki değer birebir aynı değildir. Yaygın nedenler: birinde sonda bir boşluk, birinde metin olarak, diğerinde sayı olarak saklanmış bir sayı ya da formül doldurulurken aşağı kayan $ işaretsiz bir tablo aralığı; böylece değerin bulunduğu satır artık aralığın içinde değildir.

DÜŞEYARA neden bazı satırlarda #YOK döndürüyor da diğerlerinde döndürmüyor?

Formül aşağı doldurulmadan önce tablo aralığı kilitlenmedi, bu yüzden her satırda bir satır aşağıdan başlar: ilk satırdaki A2:B6 iki satır sonra A4:B8 olur ve aralığın üstündeki değerler artık bulunmaz. Onu $ ile kilitleyin: =DÜŞEYARA(E2;$A$2:$B$6;2;YANLIŞ).

ÇAPRAZARA neden #YOK döndürüyor?

Değer arama dizisinde yoktur ya da ondan bir boşlukla veya sayı yerine metin olmasıyla ayrılır. ÇAPRAZARA varsayılan olarak tam eşleşme yapar, bu yüzden yakın hiçbir şeyi kabul etmez. Dördüncü bağımsız değişkeni hatanın yerine geçer: =ÇAPRAZARA(E2;A2:A6;B2:B6;"Not found").

KAÇINCI neden #YOK döndürüyor?

Eşleşme türü 0 ile değer aralıkta yoktur, tıpkı DÜŞEYARA'daki gibi. Eşleşme türü 1 veya hiç yazılmamışsa aralık artan sırada sıralanmış olmalı ve değer ilk öğesinden küçük olmamalıdır; tam eşleşme için =KAÇINCI(E2;A2:A6;0) kullanın.

Coddy programlama dilleri çizimi

Coddy ile kodlamayı öğren

BAŞLA