Excel'de Mantıksal Koşullarda Ustalık: Basitten Karmaşığa
Excel'de çok koşullu EĞER fonksiyonunu kullanmak için ya bir EĞER fonksiyonunu diğerinin içine yerleştirmeniz gerekir (modern sürümlerde 64 seviyeye kadar), ya da onu VE (tüm koşulların doğru olması gerekir) ve VEYA (en az bir koşulun doğru olması yeterlidir) mantıksal fonksiyonlarıyla birleştirmeniz gerekir. Bu, prim hesaplamalarından sipariş durumlarının sınıflandırılmasına kadar karmaşık veri kontrollerinin otomasyonunu sağlar.
Bu rehberde, çoklu koşulları uygulamanın üç ana yöntemini inceleyeceğiz, hazır formüller sunacağız ve kullanıcıların sıkça yaptığı hatalara dikkat çekeceğiz.
Temel sözdizimi ve mantıksal operatörler
Standart =EĞER(koşul; değer_eğer_doğru; değer_eğer_yanlış) fonksiyonu yalnızca bir kriteri kontrol eder. Birden fazla kriterle çalışmak için yardımcı fonksiyonlar kullanılır:
- VE(koşul1; koşul2; ...) — yalnızca tüm listelenen koşullar yerine getirildiğinde DOĞRU döndürür.
- VEYA(koşul1; koşul2; ...) — en az bir koşul yerine getirildiğinde DOĞRU döndürür.
Bu fonksiyonlar, EĞER içindeki ilk argüman olarak görev yapar.
Ayraçlar hakkında önemli: Excel'in Türkçe sürümünde fonksiyon argümanları noktalı virgül (;) ile ayrılır, İngilizce sürümünde ise virgül (,) kullanılır. Aşağıdaki örneklerde Türkçe yerel ayar kullanılmıştır.
Yöntem 1: VE ve VEYA fonksiyonlarının kullanımı
Bu, aynı anda birden fazla koşulu kontrol etmek için en okunabilir ve önerilen yöntemdir.
Senaryo A: Tüm koşulların sağlanması gerekir (Mantıksal "VE")
Görev: Satış hedefi (>100.000) gerçekleştiyse VE çalışanının kıdemi 3 yıldan fazlaysa prim verin.
=EĞER(VE(B2>100000; C2>3); "Prim"; "Prim yok")
Burada formül, yalnızca her iki koşul da doğru olduğunda "Prim" sonucunu döndürür. Satışlar yüksek olsa bile kıdem azsa (veya tam tersi), sonuç "Prim yok" olacaktır.
Senaryo B: Tek bir koşulun yeterli olması (Mantıksal "VEYA")
Görev: Müşteri sadık müşteri ise (durum "VIP") VEYA satın alma tutarı 50.000'i aşarsa müşteriye indirim sağlayın.
=EĞER(VEYA(A2="VIP"; B2>50000); "%10 İndirim"; "Normal fiyat")
Formül, satın alma tutarı küçük olsa bile müşteri VIP ise veya VIP statüsü olmasa bile tutar büyükse olumlu çalışacaktır.
Yöntem 2: İç içe geçmiş EĞER fonksiyonları (Koşul zinciri)
Koşulları sırayla kontrol etmek ve her durum için farklı değerler döndürmek gerektiğinde kullanılır. Bu, derecelendirmeler (örneğin, başarı notları veya vergi oranları) için uygundur.
Görev: Borç tutarına bağlı olarak risk kategorisi atayın:
- 10.000'e kadar — "Düşük"
- 10.000 ile 50.000 arasında — "Orta"
- 50.000'in üzerinde — "Yüksek"
=EĞER(B2<10000; "Düşük"; EĞER(B2<=50000; "Orta"; "Yüksek"))
Nasıl çalışır:
- Excel ilk koşulu (
B2<10000) kontrol eder. Doğruysa "Düşük" yazar ve işlemi sonlandırır. - Yanlışsa, ikinci EĞER'e geçer.
B2<=50000koşulunu kontrol eder. Doğruysa "Orta". - İkinci koşul da yanlışsa, son argüman devreye girer — "Yüksek".
İç içe geçme sınırı: Excel'de 64 adet EĞER fonksiyonunu birbirinin içine yerleştirebilirsiniz. Ancak bu tür formülleri okumak ve hata ayıklamak zordur. Koşul sayısı 3-4'ten fazlaysa, ARA veya DÜŞEYARA fonksiyonlarını bir eşleşme tablosuyla birlikte kullanmayı düşünün.
Yöntem 3: Kombinasyon yaklaşımı (İç içe geçmede VE/VEYA kullanımı)
En karmaşık senaryolar için her iki yöntemi birleştirebilirsiniz.
Görev: Satış yöneticisinin primini hesaplayın.
- Satışlar > 1 milyon VE bölge "İstanbul" ise → %20 Prim.
- Satışlar > 1 milyon VE bölge "İstanbul" değilse → %10 Prim.
- Diğer durumlarda → %0.
=EĞER(VE(B2>1000000; C2="İstanbul"); %20; EĞER(B2>1000000; %10; 0))
Alternatif: Toplama için ÇOKEĞER fonksiyonu
Kullanıcılar genellikle "çok koşullu EĞER" ararken, aslında kriterleri karşılayan öğelerin toplamını veya sayısını hesaplamak isterler. Bu durumda iç içe geçmiş EĞER'lere gerek yoktur. Özel fonksiyonları kullanın:
- ÇOKEĞERSAY — birden fazla koşula göre hücre sayısını sayma.
- Örnek: "Laptop" ürünü için Ocak ayında kaç satış yapıldı?
=ÇOKEĞERSAY(A2:A100; "Ocak"; B2:B100; "Laptop")
- ÇOKTOPLA — birden fazla koşula göre değerlerin toplamını alma.
- Örnek: "Laptop" ürünü için Ocak ayındaki toplam gelir.
=ÇOKTOPLA(C2:C100; A2:A100; "Ocak"; B2:B100; "Laptop")
Burada toplama aralığı ilk sırada yer alır, bu da normal TOPLA.EĞER fonksiyonundan farklıdır.
Formül yazarken sık yapılan hatalar
- Kapatılmamış parantezler. Birden fazla EĞER iç içe geçtiğinde parantez sayısını kaybetmek kolaydır. Formülün sonunda, açılan parantez sayısı kadar kapanan parantez
)olmalıdır. Formül düzenleyicideki sözdizimi vurgulama, bunları eşleştirmenize yardımcı olacaktır. - ÇOKTOPLA'da yanlış argüman sırası. Çoğu fonksiyondan farklı olarak, burada ilk argüman toplama aralığıdır, ardından "koşul aralığı – koşul" çiftleri gelir.
- Tırnak işareti olmadan metin değerleri. Metni karşılayan koşullar (örneğin,
"İstanbul"), mutlaka çift tırnak içine alınmalıdır. Sayılar tırnaksız yazılır. - Gereksiz boşluklar.
VEYA("Evet"; " Hayır")fonksiyonu, "Hayır" değerine sahip bir hücre için kelimenin önündeki boşluk nedeniyle çalışmayacaktır. Verileri temizlemek içinKIRPfonksiyonunu kullanın.
SSS
DÜŞEYARA ile iç içe geçmiş EĞER arasındaki fark nedir? Net bir eşleşme tablonuz varsa (örneğin, ürün kodu -> fiyat) DÜŞEYARA (veya ARA) kullanmak daha iyidir. İç içe geçmiş EĞER, basit bir tablo olarak temsil edilemeyen benzersiz mantıklar için daha uygundur (örneğin, koşullara bağlı karmaşık matematiksel hesaplamalar).
Koşullarda joker karakterler kullanılabilir mi?
Evet, ÇOKEĞERSAY ve ÇOKTOPLA gibi fonksiyonlarda ve ayrıca EĞER içindeki metin karşılaştırma koşullarında * (herhangi sayıda karakter) ve ? (tek karakter) kullanılabilir. Örneğin: EĞER(VEYA(A2="Ahmet*"; ...) Ahmet ile başlayan tüm isimleri bulacaktır.
Neden formül #DEĞER! hatası döndürüyor? Bu çoğunlukla, metinle matematiksel bir işlem yapmaya çalıştığınız veya zorunlu bir argümanı (örneğin, iç içe geçmiş yapıda "YANLIŞ" durumu için değeri) belirtmeyi unuttuğunuz anlamına gelir. Hücrelerdeki veri türlerini kontrol edin.