Excel'de Koşullu Hesaplamalarda Ustalık
EĞER fonksiyonu, bir koşulun doğruluğuna bağlı olarak farklı işlemler gerçekleştirmenizi sağlar. Birden fazla kritere sahip durumlarla çalışırken, bu fonksiyon VE (tüm koşulların eşleşmesi gerekir) veya VEYA (tek bir eşleşme yeterlidir) fonksiyonlarıyla birleştirilir; ayrıca karmaşık mantıksal zincirler oluşturmak için iç içe yapılar kullanılır. Bu, verilerin otomatik kategorize edilmesi, primlerin hesaplanması ve normlara uygunluğun kontrol edilmesi için temel bir araçtır.
Temel Mantık ve Sözdizimi
Standart formül şu şekildedir: =EĞER(koşul; değer_eğer_doğruysa; değer_eğer_yanlışsa). Ancak gerçek dünyadaki görevler nadiren tek bir parametreyle sınırlı kalır.
Birden fazla faktörü aynı anda kontrol etmeniz gerektiğinde, temel sözdizimi mantıksal operatörlerle genişletilir:
- VE (AND): Yalnızca belirtilen tüm koşullar yerine getirildiğinde DOĞRU değerini döndürür.
- VEYA (OR): Koşullardan en az biri yerine getirildiğinde DOĞRU değerini döndürür.
İpucu: Excel'in Türkçe sürümünde bağımsız değişkenler noktalı virgül (;) ile ayrılır, İngilizce sürümünde ise virgül (,) kullanılır. Sisteminiz için doğru ayırıcıyı kullandığınızdan emin olun.
EĞER Fonksiyonunu VE Fonksiyonuyla Birleştirme
Bu seçenek, sonucun yalnızca tüm kriterlerin aynı anda karşılanması durumunda olumlu olması gerektiğinde kullanılır. Klasik bir örnek, değer aralığının kontrol edilmesidir.
Görev: Satış planı gerçekleştirildiyse (B2 hücresi > 100) VE ödeme süresi gecikmediyse (C2 hücresi = "Ödendi") bonus verin.
Formül:
=EĞER(VE(B2>100; C2="Ödendi"); "Bonus"; "Bonus yok")
Burada VE fonksiyonu, EĞER için ilk bağımsız değişken olarak görev yapar. Parantez içindeki her iki koşul da doğruysa, formül "Bonus" değerini döndürür. Diğer tüm durumlarda ise "Bonus yok" döner.
Esnek Koşullar İçin VEYA Fonksiyonunu Kullanma
Bu senaryo, listedeki koşullardan herhangi birinin yerine getirilmesinin yeterli olduğu durumlarda uygulanır.
Görev: Müşteri emekliyse (D2 hücresi = "Evet") VEYA 5000 TL'nin üzerinde alışveriş yaptıysa (E2 hücresi > 5000) müşteriye indirim sağlayın.
Formül:
=EĞER(VEYA(D2="Evet"; E2>5000); "%10 İndirim"; "Normal fiyat")
Kullanıcı en azından bir kategoriye uyuyorsa, koşul doğru kabul edilir.
Çoklu Kontroller İçin İç İçe EĞER Fonksiyonları
Yeni fonksiyonların (örneğin XLOOKUP) ortaya çıkmasından önce, iç içe EĞER fonksiyonları ikiden fazla seçeneği kontrol etmenin tek yoluydu. Mantık, "ilk değilse, ikinciye bakarız" prensibine göre kurulur.
Görev: Borç tutarına bağlı olarak durum atayın:
-
100.000 — "Kritik"
-
50.000 — "Dikkat"
-
0 — "Normal"
- 0 — "Ödendi"
Formül:
=EĞER(A2>100000; "Kritik"; EĞER(A2>50000; "Dikkat"; EĞER(A2>0; "Normal"; "Ödendi")))
Parantezlere dikkat: Sonundaki kapatma parantezlerinin sayısı, açılan parantezlerin sayısıyla tam olarak eşleşmelidir. Tek bir parantez hatası, tüm zincirin yanlış hesaplanmasına neden olur.
Tablo: Çoklu Koşullara Yaklaşım Karşılaştırması
| Yöntem | Ne Zaman Kullanılır | Avantajlar | Dezavantajlar |
|---|---|---|---|
| EĞER + VE | Tüm koşullar zorunludur | Net mantık, okunması kolay | Alternatifler için uygun değildir |
| EĞER + VEYA | Tek bir koşul yeterlidir | Filtreleme esnekliği | Dikkatsizlikte yanlış sonuç verebilir |
| İç İçe EĞER | 2-3'ten fazla yanıt seçeneği | Tüm Excel sürümlerinde çalışır | Düzenlemesi zor, hata riski yüksek |
| ÇOKLU.EĞER (IFS) | Çok sayıda koşul (Excel 2019+) | İç içelik yok, okunabilir kod | Eski sürümlerde (2016 ve öncesi) çalışmaz |
Modern Alternatifler: ÇOKLU.EĞER Fonksiyonu
Excel 2019, 2021 ve Office 365 sürümlerinde, hantal iç içe yapıların yerini alan ÇOKLU.EĞER (IFS) fonksiyonu tanıtıldı. Bu fonksiyon koşulları sırayla kontrol eder ve ilk doğru koşul için değeri döndürür.
Yukarıdaki iç içe formülün benzeri örneği:
=ÇOKLU.EĞER(A2>100000; "Kritik"; A2>50000; "Dikkat"; A2>0; "Normal"; DOĞRU; "Ödendi")
Sonundaki DOĞRU bağımsız değişkeni, diğer tüm durumlar için bir yakalama mekanizması olarak hizmet eder ("değilse" anlamında).
Sık Karşılaşılan Hatalar ve Çözüm Yolları
Karmaşık mantıkla çalışırken kullanıcılar genellikle tipik sorunlarla karşılaşır:
- #DEĞER! Hatası: Koşul olarak tırnak işareti olmadan metin girildiğinde ortaya çıkar (örneğin,
A2="Evet"yerineA2=Evet). - İç içe formüllerde yanlış koşul sırası: Excel, ilk eşleşmeden sonra kontrole devam etmez. Eğer
>50000koşulunu>100000koşulundan önce koyarsanız, 150.000 değeri asla "Kritik" kategorisine girmez, çünkü önce "50 binden büyük" koşulu tetiklenir. Her zaman büyüktenden küçüğe (veya tam tersi, ancak tutarlı bir şekilde) ilerleyin. - Boş hücrelerin göz ardı edilmesi: Mantıksal karşılaştırmalarda boş bir hücre sıfır gibi davranabilir. Boşluk kontrolü ekleyin:
=EĞER(A2=""; ""; EĞER(...)).
Sıkça Sorulan Sorular (SSS)
Tek bir formülde VE ve VEYA birleştirilebilir mi?
Evet, bu standart bir uygulamadır. Örneğin: =EĞER(VE(A2>10; VEYA(B2="Evet"; C2="Evet")); "Onaylandı"; "Reddedildi"). Burada A2 koşulunun yanı sıra, VEYA grubundaki koşullardan en az birinin de yerine getirilmesi gerekir.
Desteklenen maksimum iç içe geçme sayısı nedir?
Modern Excel sürümlerinde 64 seviyeye kadar iç içe geçmeye izin verilir. Ancak pratikte, formülün yönetilemez hale gelmemesi için 3–5 seviyeyi aşmamanız önerilir. Bunun yerine ÇOKLU.EĞER fonksiyonunu veya yardımcı sütunları kullanmak daha iyidir.
Metin aralığını kontrol etmem gerekirse ne yapmalıyım?
Kısmi metin eşleşmesi için EĞER koşulu içinde ISNUMBER(SEARCH("metin"; A2)) fonksiyonunu kullanın. Örneğin: =EĞER(ISNUMBER(SEARCH("İstanbul"; A2)); "Büyükşehir"; "Diğer").