EĞERHATA (İngilizce IFERROR) formülü =EĞERHATA(B2/C2;0) B2/C2 sonucunu ya da bu sonuç bir hataysa 0 döndürür. İlk bağımsız değişken istediğiniz formüldür; ikincisi, formülün ürettiği herhangi bir hatanın yerine gösterilecek şeydir. Tablodaki formülleri de bu şekilde, Türkçe adlarla ve noktalı virgülle yazabilirsiniz.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Product | Revenue | Units | Plain | With IFERROR |
| 2 | Pens | $120 | 80 | $1.50 | $1.50 |
| 3 | Paper | $300 | 50 | $6.00 | $6.00 |
| 4 | Ink | $90 | 0 | #DIV/0! | $0.00 |
| 5 | Tape | $45 | 30 | $1.50 | $1.50 |
| 6 | Clips | $0 | 0 | #DIV/0! | $0.00 |
=EĞERHATA(B2/C2;0)Ink ve Clips'in birimi 0'dır, bu yüzden D sütunundaki düz bölme #DIV/0! gösterir; Türkçe Excel'de bu hatanın adı #SAYI/0!'dır, tablo ise hata adlarını İngilizce gösterir. E sütunu onlar için $0.00, diğer her satır için normal fiyatı gösterir. C4'e 15 yazın, iki sütun da Ink'in fiyatını gösterir.
EĞERHATA söz dizimi
=IFERROR(value, value_if_error)
value, hesaplanacak formüldür.value_if_error,valueherhangi bir hata olduğunda döndürülür:#YOK(#N/A),#DEĞER!(#VALUE!),#BAŞV!(#REF!),#SAYI/0!(#DIV/0!),#SAYI!(#NUM!),#AD?(#NAME?),#BOŞ!(#NULL!) ve#HESAPLA!(#CALC!) gibi daha yeni olanlar.valuebir hata değilse EĞERHATA onu değiştirmeden döndürür.
Yedek değer bir sayı (0), metin ("Not found"), boş metin ("") ya da başka bir formül olabilir; örneğin başka bir tabloda ikinci bir arama: =EĞERHATA(DÜŞEYARA(E2;A2:C6;3;YANLIŞ);DÜŞEYARA(E2;G2:I6;3;YANLIŞ)).
DÜŞEYARA ile EĞERHATA
Değer tabloda yoksa bir arama #YOK döndürür. Onu EĞERHATA ile sarmalamak bunun yerine bir mesaj gösterir:
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Look for | Price | |
| 2 | Apple | Fruit | $1.20 | Pear | $1.50 | |
| 3 | Pear | Fruit | $1.50 | Kiwi | Not found | |
| 4 | Carrot | Vegetable | $0.80 | Milk | $1.10 | |
| 5 | Bread | Bakery | $2.40 | |||
| 6 | Milk | Dairy | $1.10 |
=EĞERHATA(DÜŞEYARA(E2;$A$2:$C$6;3;YANLIŞ);"Not found")Kiwi listede yok, bu yüzden F3 Not found der. A4'e Carrot yerine Kiwi yazın, F3 onu bulur. ÇAPRAZARA (İngilizce XLOOKUP) ile bunun için EĞERHATA gerekmez, çünkü dördüncü bağımsız değişkeni "bulunamadı" değeridir: =ÇAPRAZARA(E2;A2:A6;C2:C6;"Not found").
EĞERYOKSA: yalnızca #YOK hatasını yakalamak
EĞERYOKSA (İngilizce IFNA) EĞERHATA gibi çalışır ama yalnızca #YOK hatasını değiştirir. Aramalar için genellikle istenen budur: #YOK olağan bir cevap olan "bulunamadı" anlamına gelir, başka herhangi bir hata ise formülün kendisinin yanlış olduğunu gösterir. Bu tablodaki formüller üç sütunlu bir tablonun 4. sütununu istiyor, yani bir yazım hatası var:
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Look for | IFERROR | IFNA | |
| 2 | Apple | Fruit | 1.2 | Pear | Not found | #REF! | |
| 3 | Pear | Fruit | 1.5 | ||||
| 4 | Carrot | Vegetable | 0.8 | ||||
| 5 | Bread | Bakery | 2.4 | ||||
| 6 | Milk | Dairy | 1.1 |
=EĞERHATA(DÜŞEYARA(E2;$A$2:$C$6;4;YANLIŞ);"Not found")Pear tabloda var, yine de F2 Not found diyor: EĞERHATA hatalı sütun numarasından gelen #BAŞV! hatasını eksik bir ürünle aynı mesaja çevirdi. G2 #REF! hatasını geçirir, böylece formülün bozuk olduğunu görürsünüz. G2'deki 4'ü 3 yapın, 1.5 döndürür. EĞERYOKSA için Excel 2013 veya sonrası gerekir.
Hata yerine boş döndürme
Hiçbir şey göstermemek için yedek değer olarak boş metin, yani iki çift tırnak kullanın:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Month | Last year | This year | Growth |
| 2 | Jan | 200 | 240 | 20% |
| 3 | Feb | 0 | 150 | |
| 4 | Mar | 180 | 171 | -5% |
| 5 | Apr | 90 | ||
| 6 | May | 250 | 300 | 20% |
=EĞERHATA((C2-B2)/B2;"")Şubat ve Nisan'da geçen yıl satış yoktu, bu yüzden büyümeleri hesaplanamaz ve hücre boş kalır. Diğer aylar 20%, -5% ve 20% gösterir. "" içeren bir hücre metin barındırır: TOPLA ve ORTALAMA onu atlar, ama =D3*2 #DEĞER! verir. Sonraki formüller sütun üzerinde aritmetik yapıyorsa bunun yerine 0 döndürün.
Alıştırma: yedekli arama
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Product | Stock | Look for | Stock | ||
| 2 | Apple | 40 | Kiwi | |||
| 3 | Pear | 25 | ||||
| 4 | Carrot | 60 | ||||
| 5 | Bread | 12 | ||||
| 6 | Milk | 30 |
Sıra sende: F2 hücresinde E2'deki ürünün stokunu A2:B6'dan arayın ve ürün listede yoksa "Not found" gösterin.
Her hatayı gizlemek neden yanlışları gizleyebilir
EĞERHATA hiçbir şeyi düzeltmez; yalnızca hücrenin ne göstereceğine karar verir. Bir formülü onunla sarmalamadan önce:
- Hatanın neden oluştuğunu bulun. Boş bir Units hücresi
#SAYI/0!hatasına yol açıyorsa, gerçek çözüm sıfır fiyat değil, birinin girmesi gereken veri olabilir. - Aramalarda EĞERYOKSA'yı tercih edin, böylece yanlış bir sütun numarası (
#BAŞV!), yanlış yazılmış bir ad (#AD?) veya sayı sütunundaki metin (#DEĞER!) yine görünür. - Bölmelerde belirli durumu sınayın.
=EĞER(C2=0;0;B2/C2)sıfır bölenle ilgilenir, başka hiçbir şeyle değil; B2'deki yanlış bir başvuru yine kendi hatasını gösterir. #SAYI/0! sayfası iki yaklaşımı karşılaştırıyor. - Veriyle karıştırılamayacak bir yedek değer seçin. Fiyat sütunundaki bir 0 gerçek bir fiyat gibi görünür ve ortalamayı düşürür;
""veya "Not found" öyle görünmez.
Formülü en son, çalışması gereken satırlarda doğru sonucu verdiğinde sarmalayın.
Sıkça Sorulan Sorular
DÜŞEYARA ile EĞERHATA nasıl kullanılır?
Aramayı sarmalayın: =EĞERHATA(DÜŞEYARA(E2;A2:C6;3;YANLIŞ);"Not found"). E2 ilk sütunda yoksa hücre #YOK yerine Not found gösterir. =EĞERYOKSA(DÜŞEYARA(E2;A2:C6;3;YANLIŞ);"Not found") de aynısını yapar ve diğer hataları yine gösterir.
EĞERHATA'nın boş hücre döndürmesini nasıl sağlarım?
İkinci bağımsız değişken olarak boş metin kullanın: =EĞERHATA(B2/C2;""). Hücre boş görünür ama metin içerir, bu yüzden üzerinde =D2+1 #DEĞER! verir; TOPLA ve ORTALAMA ise onu atlar.
EĞERHATA ile EĞERYOKSA arasındaki fark nedir?
EĞERHATA her hatayı değiştirir: #YOK, #SAYI/0!, #DEĞER!, #BAŞV!, #AD?, #SAYI! ve #BOŞ!. EĞERYOKSA yalnızca aramaların "bulunamadı" hatası olan #YOK'u değiştirir ve diğer her hatanın görünmesine izin verir; böylece bozuk bir formül gizlenmez.
Excel'de #YOK yerine 0 nasıl yazdırılır?
Formülü değer olarak 0 ile EĞERYOKSA içine alın: =EĞERYOKSA(DÜŞEYARA(E2;A2:C6;3;YANLIŞ);0). ÇAPRAZARA'da bu yedek değer dördüncü bağımsız değişken olarak hazır gelir: =ÇAPRAZARA(E2;A2:A6;C2:C6;0).
EĞERHATA ve EĞERYOKSA hangi Excel sürümlerinde var?
EĞERHATA Excel 2007'den, EĞERYOKSA Excel 2013'ten beri vardır. Eski dosyalarda =EĞER(EHATALIYSA(B2/C2);0;B2/C2) görebilirsiniz; EĞERHATA ile aynı işi yapar ama formülü iki kez hesaplar.