İçeriğe geç
parazade
İleri seviyesiDers 3 / 9

İleri Ders 3: ÇOKEĞER ve İLKEŞLEŞEN ile Karar Tabloları

Yayın: · Son güncelleme:

Bu derste

Bu derste iç içe EĞER zincirlerini ÇOKEĞER ile okunur hâle getirir, sabit kod ve değer eşleşmelerini İLKEŞLEŞEN ile kurar, VE fonksiyonuyla iki koşullu bir indirim tablosu hazırlarsınız. Koşulların sırasının sonucu nasıl değiştirdiğini de görürsünüz.

Ders sonunda şunları yapabileceksiniz

  • İç içe EĞER formülünü ÇOKEĞER'e çevirmek
  • ÇOKEĞER'de koşul sırasının neden önemli olduğunu anlamak
  • Varsayılan sonucu DOĞRU koşuluyla tanımlamak
  • İLKEŞLEŞEN ile kod-açıklama eşleşmesi kurmak
  • VE ile iki koşulu tek basamakta birleştirmek
İçindekiler
  1. Ne zaman ÇOKEĞER gerekir?
  2. Koşulların sırası sonucu belirler
  3. Varsayılan sonuç için DOĞRU
  4. İLKEŞLEŞEN ile kod eşleştirme
  5. İki koşullu karar tablosu
  6. Eşikleri hücreye taşımak
  7. Gözden kaçan iki tuzak
  8. Sıradaki adım

Ne zaman ÇOKEĞER gerekir?

Bir hücrenin sonucu üç ya da daha fazla duruma göre değişiyorsa ÇOKEĞER, iç içe EĞER'den daha okunur bir yol sunar. Sınav notunu harfe çeviren bir formül EĞER ile =EĞER(B2>=85;"Pekiyi";EĞER(B2>=70;"İyi";EĞER(B2>=50;"Geçti";"Kaldı"))) biçiminde yazılır. Parantezleri saymak zorlaşır ve araya yeni bir basamak eklemek hata riskini artırır.

Aynı kural ÇOKEĞER ile koşul-sonuç çiftleri olarak dizilir: =ÇOKEĞER(B2>=85;"Pekiyi";B2>=70;"İyi";B2>=50;"Geçti";DOĞRU;"Kaldı"). Excel çiftleri soldan sağa okur ve DOĞRU olan ilk koşulun sonucunu döndürür. ÇOKEĞER, Excel 2019 ve sonraki sürümlerde ve Microsoft 365'te vardır.

Koşulların sırası sonucu belirler

ÇOKEĞER ilk DOĞRU koşulda durduğu için basamakları en dar koşuldan en genişe doğru yazmanız gerekir. 74 puan alan Mert için yukarıdaki formül önce 85'i dener, sağlanmayınca 70'e geçer ve "İyi" döndürür.

Sırayı ters çevirip B2>=50 koşulunu başa yazarsanız 92 alan Ayşe de "Geçti" alır. Formül hata vermez, sadece yanlış sonuç üretir. Bu yüzden basamaklı kurallarda en az bir uç değerle, örneğin tam 85 ile, formülü sınamak iyi bir alışkanlıktır.

Varsayılan sonuç için DOĞRU

ÇOKEĞER'de "hiçbiri değilse" anlamına gelen ayrı bir argüman yoktur. Son çifte koşul olarak DOĞRU yazarsanız bu çift her zaman sağlanır ve varsayılan sonuç olur. Yazmazsanız hiçbir koşula uymayan satırda #YOK hatası görürsünüz.

İLKEŞLEŞEN ile kod eşleştirme

İLKEŞLEŞEN, bir değeri sabit seçeneklerle karşılaştırır ve eşleşenin sonucunu döndürür. Kargo kodlarını açıklamaya çeviren =İLKEŞLEŞEN(B2;"H";"Hızlı teslimat";"N";"Normal teslimat";"Bilinmeyen kod") formülünde B2 bir kez yazılır. ÇOKEĞER ile aynı işi yapmak için her koşulda B2'yi tekrarlamanız gerekirdi.

Eşi olmayan son argüman, hiçbir seçenek eşleşmediğinde dönen varsayılan değerdir. S-103 siparişindeki E kodu listede olmadığı için "Bilinmeyen kod" döner. İLKEŞLEŞEN yalnızca tam eşitliği sınar; büyüktür ya da küçüktür gibi karşılaştırmalar için ÇOKEĞER kullanılır.

Seçenek sayısı onu geçiyorsa kodları ayrı bir tabloya yazıp ÇAPRAZARA ile aramak daha kolay bakım sağlar. Yeni kod eklemek için formülü değil tabloyu güncellersiniz.

İki koşullu karar tablosu

Gerçek kurallar çoğu zaman iki koşula bağlıdır. Bir toptancının indirim politikası şöyle olsun: kurumsal müşteri ve 10.000 TL üzeri sipariş %12, diğer kurumsal siparişler %7, bireysel müşteride 10.000 TL üzeri %5, geri kalan %0. Oranlar örnek amaçlıdır.

Bu tablo =ÇOKEĞER(VE(A2="Kurumsal";B2>=10000);0,12;A2="Kurumsal";0,07;B2>=10000;0,05;DOĞRU;0) ile tek formüle sığar. 8.500 TL'lik kurumsal sipariş ilk koşulu sağlamaz, ikinci koşul olan kurumsal müşteriye uyar ve %7 alır. VE'li basamağın en başta olması burada da sıranın önemini gösterir.

Eşikleri hücreye taşımak

Kural değişebiliyorsa eşikleri ve sonuçları formülün içine yazmak yerine hücrelere koyun. Kargo kuralında 1.000 ve 500 TL eşiklerini F2 ve F3'e, ücretleri G2, G3 ve G4'e yazdığınızı düşünün. Formül =ÇOKEĞER(B2>=$F$2;$G$2;B2>=$F$3;$G$3;DOĞRU;$G$4) biçimine gelir.

Mağaza ücretsiz kargo sınırını 1.250 TL'ye çektiğinde yalnızca F2'yi değiştirirsiniz. Yüzlerce satıra kopyalanmış formüle dokunmanız gerekmez. Kuralın kendisi de sayfada görünür hâle gelir, böylece raporu okuyan kişi hangi eşiklerin uygulandığını formül çubuğunu açmadan görür.

Gözden kaçan iki tuzak

İlk tuzak, sayının metin olarak girilmiş olmasıdır. Excel karşılaştırmada metni her zaman sayıdan büyük kabul eder. Başka bir sistemden kopyalanan "640" metni B2>=1000 sınamasında DOĞRU döner ve sipariş yanlışlıkla ücretsiz kargoya düşer. Hücrenin sol üst köşesindeki yeşil üçgen ya da sola yaslı sayı bu durumun işaretidir; SAYIYAÇEVİR ile ya da hücreyi sayı biçimine çevirerek düzeltirsiniz.

İkinci tuzak, metin koşullarındaki görünmez boşluklardır. Müşteri tipi hücresinde "Kurumsal " yazıyorsa A2="Kurumsal" YANLIŞ olur ve müşteri bir alt basamağa iner. Formül hata vermediği için fark etmek zordur. Kaynak sütunu KIRP ile temizlemek ya da koşulu KIRP(A2)="Kurumsal" biçiminde yazmak bu riski kaldırır.

Büyük ve küçük harf ise sorun yaratmaz. Eşittir karşılaştırması harf büyüklüğüne duyarsızdır, "kurumsal" ile "Kurumsal" aynı kabul edilir.

Sıradaki adım

Alıştırmada sipariş tutarına göre kargo ücretini ÇOKEĞER ile belirleyeceksiniz. Formülü yazdıktan sonra tutarı tam 1.000 ve tam 500 yaparak sınır değerlerin doğru basamağa düştüğünü kontrol edin. Sonra aynı kuralı eşikleri hücrelere taşıyarak yeniden yazın ve ücretsiz kargo sınırını değiştirip sonuçların nasıl güncellendiğine bakın.

Örnekler

Örnek 1: Puandan harf notuna
ABCD
1ÖğrenciPuan
2Ayşe92İyi
3Mert74
4Selin55
5Kaan41
=ÇOKEĞER(B3>=85;"Pekiyi";B3>=70;"İyi";B3>=50;"Geçti";DOĞRU;"Kaldı")

Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.

D2 hücresinin sonucu: İyi

Mert'in puanı 74. İlk koşul (85) sağlanmaz, ikinci koşul (70) sağlanır ve "İyi" döner.

Örnek 2: Kargo kodunu açıklamaya çevirme
ABCD
1SiparişKargo kodu
2S-101HBilinmeyen kod
3S-102N
4S-103E
=İLKEŞLEŞEN(B4;"H";"Hızlı teslimat";"N";"Normal teslimat";"Bilinmeyen kod")

Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.

D2 hücresinin sonucu: Bilinmeyen kod

B4'teki E kodu H ya da N ile eşleşmez. Eşi olmayan son argüman varsayılan sonuç olduğu için "Bilinmeyen kod" döner.

Örnek 3: Müşteri tipi ve tutara göre indirim
ABCD
1Müşteri tipiSipariş tutarı
2Kurumsal8.5000,07
3Bireysel12.000
4Kurumsal15.000
=ÇOKEĞER(VE(A2="Kurumsal";B2>=10000);0,12;A2="Kurumsal";0,07;B2>=10000;0,05;DOĞRU;0)

Türkçe Excel'de bağımsız değişkenler noktalı virgülle (;), İngilizce Excel'de virgülle (,) ayrılır.

D2 hücresinin sonucu: 0,07

8.500 TL'lik kurumsal sipariş 10.000 TL sınırını geçmediği için ilk basamağa girmez. İkinci koşul sağlandığı için %7 döner.

Ders dosyasını indir.xlsx dosyası, ücretsiz
AlıştırmaAlıştırma: ÇOKEĞER ile Kargo Ücreti →Dört siparişin kargo ücretini, tutara göre üç basamaklı bir kurala göre ÇOKEĞER ile hesaplayın. Sınır değerdeki bir sipariş, koşul sırasının ve büyük eşittir işaretinin doğru kullanılıp kullanılmadığını sınar.

Sıkça Sorulan Sorular

ÇOKEĞER'de kaç koşul yazabilirim?

Microsoft'a göre en fazla 127 koşul-sonuç çifti yazılabilir. Pratikte altı yedi basamağı geçen kurallarda eşikleri bir tabloya yazıp ÇAPRAZARA ile aramak daha kolay bakım sağlar.

İLKEŞLEŞEN ile ÇOKEĞER arasındaki fark nedir?

İLKEŞLEŞEN tek bir ifadeyi sabit değerlerle eşitlik açısından karşılaştırır. ÇOKEĞER ise her basamakta ayrı bir mantıksal sınama yapar, bu yüzden büyüktür, küçüktür ve VE gibi birleşik koşullar için uygundur.

ÇOKEĞER #YOK hatası veriyor, neden?

Hiçbir koşul DOĞRU olmamıştır. Son çifte DOĞRU;"varsayılan" ekleyerek her satırın bir sonuç almasını sağlayın.