Birden çok koşul içeren Excel IF işlevi

  • Bunu Paylaş
Michael Brown

Bu eğitimde, Excel'de VE ve VEYA mantığı ile birden fazla EĞER deyiminin nasıl oluşturulacağı gösterilmektedir. Ayrıca, EĞER'i diğer Excel işlevleriyle birlikte nasıl kullanacağınızı öğreneceksiniz.

Excel EĞER eğitimimizin ilk bölümünde, metin, sayılar, tarihler, boşluklar ve boş olmayanlar için tek koşullu basit bir EĞER deyiminin nasıl oluşturulacağını inceledik. Bununla birlikte, güçlü veri analizi için, genellikle bir seferde birden fazla koşulu değerlendirmeniz gerekebilir. Aşağıdaki formül örnekleri size bunu yapmanın en etkili yollarını gösterecektir.

    IF fonksiyonu birden fazla koşulla nasıl kullanılır?

    Temel olarak, iki tür VE / VEYA mantığına dayalı birden fazla kriter içeren EĞER formülü Sonuç olarak, EĞER formülünüzün mantıksal testinde bu işlevlerden birini kullanmalısınız:

    • AND işlevi - aşağıdaki durumlarda TRUE döndürür tüm koşullar karşılanır; aksi takdirde FALSE.
    • VEYA işlevi - aşağıdaki durumlarda DOĞRU döndürür herhangi bir tek koşul karşılanır; aksi takdirde FALSE.

    Konuyu daha iyi açıklamak için, bazı gerçek hayat formül örneklerini inceleyelim.

    Birden çok koşul içeren Excel IF deyimi (AND mantığı)

    İki veya daha fazla koşul içeren Excel EĞER'in genel formülü şudur:

    EĞER(VE( koşul1 , koşul2 , ...), value_if_true, value_if_false)

    İnsan diline çevrildiğinde formül şöyle der: Koşul 1 doğruysa VE koşul 2 doğruysa, geri dön value_if_true ; else return value_if_false .

    B ve C sütunlarında iki testin puanlarını listeleyen bir tablonuz olduğunu varsayalım. Final sınavını geçmek için bir öğrencinin her iki puanının da 50'den büyük olması gerekir.

    Mantıksal test için aşağıdaki AND deyimini kullanırsınız: AND(B2>50, C2>50)

    Her iki koşul da doğruysa, formül "Geçti"; herhangi bir koşul yanlışsa - "Başarısız" sonucunu verir.

    =IF(AND(B2>50, B2>50), "Geçti", "Kaldı")

    Kolay, değil mi? Aşağıdaki ekran görüntüsü Excel IF /AND formülümüzün doğru çalıştığını kanıtlıyor:

    Benzer bir şekilde, Excel EĞER işlevini birden çok metin koşulları .

    Örneğin, B2 ve C2'nin her ikisi de 50'den büyükse "İyi", aksi takdirde "Kötü" çıktısı vermek için formül şöyledir:

    =IF(AND(B2="pass", C2="pass"), "İyi!", "Kötü")

    Önemli not! AND fonksiyonu şunları kontrol eder tüm koşullar Böyle bir davranış biraz sıra dışıdır çünkü programlama dillerinin çoğunda, önceki testlerden herhangi biri FALSE döndürmüşse sonraki koşullar test edilmez.

    Pratikte, görünüşte doğru olan bir EĞER deyimi bu özellik nedeniyle bir hatayla sonuçlanabilir. Örneğin, A2 hücresi 0'a eşitse aşağıdaki formül #DIV/0! ("sıfıra bölme" hatası) döndürür:

    =IF(AND(A20, (1/A2)>0.5), "İyi", "Kötü")

    Bundan kaçınmak için iç içe geçmiş bir IF fonksiyonu kullanmalısınız:

    =IF(A20, IF((1/A2)>0.5, "İyi", "Kötü"), "Kötü")

    Daha fazla bilgi için lütfen Excel'de EĞER VE formülüne bakın.

    Birden çok koşullu Excel EĞER işlevi (VEYA mantığı)

    Eğer bir şey yapmak için herhangi bir koşul karşılanıyorsa, başka bir şey yapın, EĞER ve VEYA işlevlerinin bu kombinasyonunu kullanın:

    EĞER(VEYA( koşul1 , koşul2 , ...), value_if_true, value_if_false)

    Yukarıda tartışılan EĞER / VE formülünden farkı, belirtilen koşullardan herhangi biri doğruysa Excel'in DOĞRU döndürmesidir.

    Yani, önceki formülde AND yerine OR kullanırsak:

    =IF(OR(B2>50, B2>50), "Geçti", "Kaldı")

    Bu durumda, her iki sınavda da 50'den fazla puan alan herkes D sütununda "Geçer" notu alacaktır. Bu koşullar altında, öğrencilerimizin final sınavını geçme şansı daha yüksektir (Yvette özellikle şanssız bir şekilde sadece 1 puanla başarısız olmuştur :)

    İpucu: Eğer bir metin içeren çoklu IF deyimi ve VEYA mantığı ile bir hücredeki değeri test ederseniz (yani bir hücre "bu" veya "şu" olabilir), bir dizi sabiti kullanarak daha kompakt bir formül oluşturabilirsiniz.

    Örneğin, B2 hücresi "teslim edildi" veya "ödendi" ise bir satışı "kapalı" olarak işaretlemek için formül şu şekildedir:

    =IF(OR(B2={"teslim edildi", "ödendi"}), "Kapalı", "")

    Daha fazla formül örneği Excel EĞER VEYA işlevinde bulunabilir.

    Birden fazla AND & OR ifadesi içeren IF

    Göreviniz birden fazla koşul kümesini değerlendirmeyi gerektiriyorsa, bir seferde hem AND & OR işlevlerini kullanmanız gerekecektir.

    Örnek tablomuzda, sınav sonuçlarını kontrol etmek için aşağıdaki kriterlere sahip olduğunuzu varsayalım:

    • Koşul 1: sınav1>50 ve sınav2>50
    • Koşul 2: sınav1>40 ve sınav2>60

    Koşullardan herhangi birinin karşılanması halinde final sınavı geçilmiş sayılır.

    İlk bakışta formül biraz zor gibi görünse de aslında öyle değil! Yukarıdaki koşulların her birini bir AND ifadesi olarak ifade etmeniz ve bunları OR işlevine yerleştirmeniz yeterlidir (her iki koşulun da karşılanması gerekmediğinden, herhangi biri yeterli olacaktır):

    OR(AND(B2>50, C2>50), AND(B2>40, C2>60)

    Ardından, EĞER'in mantıksal testi için VEYA işlevini kullanın ve istenen value_if_true ve value_if_false Sonuç olarak, birden çok VE / VEYA koşulu içeren aşağıdaki EĞER formülünü elde edersiniz:

    =IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Geçti", "Kaldı")

    Aşağıdaki ekran görüntüsü formülü doğru yaptığımızı gösteriyor:

    Doğal olarak, EĞER formüllerinizde yalnızca iki VE/VEYA işlevi kullanmakla sınırlı değilsiniz. İş mantığınızın gerektirdiği sayıda VE/VEYA işlevi kullanabilirsiniz:

    • Excel 2007 ve sonraki sürümlerde, en fazla 255 bağımsız değişkene sahip olursunuz ve EĞER formülünün toplam uzunluğu 8.192 karakteri aşmaz.
    • Excel 2003 ve daha düşük sürümlerde, en fazla 30 bağımsız değişken vardır ve EĞER formülünüzün toplam uzunluğu 1.024 karakteri aşmaz.

    Birden fazla mantıksal testi kontrol etmek için iç içe IF deyimi

    Tek bir formül içinde birden fazla mantıksal testi değerlendirmek istiyorsanız, birkaç işlevi birbiri içine yerleştirebilirsiniz. Bu tür işlevlere iç içe IF fonksiyonları Mantıksal testlerin sonuçlarına bağlı olarak farklı değerler döndürmek istediğinizde özellikle kullanışlıdırlar.

    İşte size tipik bir örnek: Diyelim ki öğrencilerin başarılarını " İyi ", " Tatmin edici " ve " Zayıf " aşağıdaki puanlara göre:

    • İyi: 60 veya daha fazla (>=60)
    • Tatmin edici: 40 ile 60 arasında (>40 ve <60)
    • Zayıf: 40 veya daha az (<=40)

    Bir formül yazmadan önce, yerleştireceğiniz işlevlerin sırasını göz önünde bulundurun. Excel, mantıksal testleri formülde göründükleri sırayla değerlendirecektir. Bir koşul DOĞRU olarak değerlendirildiğinde, sonraki koşullar test edilmez, yani formül ilk DOĞRU sonucundan sonra durur.

    Bizim durumumuzda, fonksiyonlar en büyükten en küçüğe doğru sıralanmıştır:

    =IF(B2>=60, "İyi", IF(B2>40, "Tatmin Edici", "Zayıf"))

    Doğal olarak, gerekirse daha fazla işlevi iç içe yerleştirebilirsiniz (modern sürümlerde 64'e kadar).

    Daha fazla bilgi için lütfen Excel'de iç içe geçmiş birden çok EĞER deyiminin nasıl kullanılacağına bakın.

    Birden çok koşul içeren Excel EĞER dizi formülü

    Bir Excel EĞER'inin birden fazla koşulu test etmesini sağlamanın bir başka yolu da bir dizi formülü kullanmaktır.

    Koşulları AND mantığı ile değerlendirmek için yıldız işaretini kullanın:

    EĞER( koşul1 ) * ( koşul2 ) * ..., value_if_true, value_if_false)

    Koşulları VEYA mantığı ile test etmek için artı işaretini kullanın:

    EĞER( koşul1 ) + ( koşul2 ) + ..., value_if_true, value_if_false)

    Bir dizi formülünü doğru şekilde tamamlamak için Ctrl + Shift + Enter tuşlarına birlikte basın. Excel 365 ve Excel 2021'de, dinamik diziler için destek nedeniyle bu normal bir formül olarak da çalışır.

    Örneğin, B2 ve C2'nin her ikisi de 50'den büyükse "Geçer" almak için formül şöyledir:

    =IF((B2>50) * (C2>50), "Geçti", "Kaldı")

    Benim Excel 365'imde, normal bir formül gayet iyi çalışıyor (yukarıdaki ekran görüntülerinde görebileceğiniz gibi). Excel 2019 ve daha düşük sürümlerde, Ctrl + Shift + Enter kısayolunu kullanarak bunu bir dizi formülü haline getirmeyi unutmayın.

    VEYA mantığı ile birden fazla koşulu değerlendirmek için formül şöyledir:

    =IF((B2>50) + (C2>50), "Geçti", "Kaldı")

    IF'yi diğer işlevlerle birlikte kullanma

    Bu bölümde, IF'nin diğer Excel işlevleriyle birlikte nasıl kullanılacağı ve bunun size ne gibi faydalar sağlayacağı açıklanmaktadır.

    Örnek 1. DÜŞEYARA'da #N/A hatası varsa

    DÜŞEYARA veya başka bir arama işlevi bir şey bulamadığında #N/A hatası döndürür. Tablolarınızın daha hoş görünmesini sağlamak için, #N/A durumunda sıfır, boş veya belirli bir metin döndürebilirsiniz:

    IF(ISNA(VLOOKUP(...)), value_if_na , VLOOKUP(...))

    Örneğin:

    Eğer #N/A ise 0 döndürür:

    E1'deki arama değeri bulunamazsa, formül sıfır döndürür.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))

    Eğer #N/A ise boş bırakın:

    Arama değeri bulunamazsa, formül hiçbir şey döndürmez (boş bir dize).

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))

    Eğer #N/A ise belirli bir metin döndürür:

    Arama değeri bulunamazsa, formül belirli bir metin döndürür.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Bulunamadı", VLOOKUP(E1, A2:B10, 2, FALSE))

    Daha fazla formül örneği için lütfen Excel'de EĞER deyimi ile DÜŞEYARA bölümüne bakın.

    Örnek 2. TOPLA, ORTALAMA, MİN ve MAKS fonksiyonları ile EĞER

    Hücre değerlerini belirli ölçütlere göre toplamak için Excel, SUMIF ve SUMIFS işlevlerini sağlar.

    Bazı durumlarda, iş mantığınız EĞER'in mantıksal testine TOPLA işlevini dahil etmenizi gerektirebilir. Örneğin, B2 ve C2'deki değerlerin toplamına bağlı olarak farklı metin etiketleri döndürmek için formül şöyledir:

    =IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))

    Toplam 130'dan büyükse, sonuç "iyi"; 110'dan büyükse - "tatmin edici", 110 veya daha düşükse - "zayıf".

    Benzer bir şekilde, ORTALAMA işlevini EĞER mantıksal testine yerleştirebilir ve ortalama puana göre farklı etiketler döndürebilirsiniz:

    =IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))

    Toplam puanın D sütununda olduğunu varsayarsak, MAX ve MIN fonksiyonlarının yardımıyla en yüksek ve en düşük değerleri belirleyebilirsiniz:

    =IF(D2=MAX($D$2:$D$10), "En iyi sonuç", "")

    =IF(D2=MAX($D$2:$D$10), "En iyi sonuç", "")

    Her iki etiketin de tek bir sütunda olması için yukarıdaki fonksiyonları birbiri içine yerleştirin:

    =IF(D2=MAX($D$2:$D$10), "En iyi sonuç", IF(D2=MIN($D$2:$D$10), "En kötü sonuç", "")

    Aynı şekilde, IF'yi özel fonksiyonlarınızla birlikte kullanabilirsiniz. Örneğin, hücre rengine göre farklı sonuçlar döndürmek için GetCellColor veya GetCellFontColor ile birleştirebilirsiniz.

    Ayrıca Excel, koşullara dayalı olarak verileri hesaplamak için bir dizi işlev sağlar. Ayrıntılı formül örnekleri için lütfen aşağıdaki eğitimlere göz atın:

    • COUNTIF - bir koşulu karşılayan hücreleri sayar
    • COUNTIFS - birden fazla kritere sahip hücreleri sayar
    • SUMIF - hücreleri koşullu olarak toplar
    • SUMIFS - birden çok ölçüt içeren hücreleri toplar

    Örnek 3. ISNUMBER, ISTEXT ve ISBLANK ile IF

    Metin, sayı ve boş hücreleri tanımlamak için Microsoft Excel, ISTEXT, ISNUMBER ve ISBLANK gibi özel işlevler sağlar. Bunları iç içe geçmiş üç IF deyiminin mantıksal testlerine yerleştirerek, tüm farklı veri türlerini tek seferde tanımlayabilirsiniz:

    =IF(ISTEXT(A2), "Metin", IF(ISNUMBER(A2), "Sayı", IF(ISBLANK(A2), "Boş", ""))

    Örnek 4. IF ve CONCATENATE

    EĞER ve bazı metinlerin sonucunu tek bir hücreye çıkarmak için, CONCATENATE veya CONCAT (Excel 2016 - 365'te) ve EĞER işlevlerini birlikte kullanın. Örneğin:

    =CONCATENATE("You performed ", IF(B1>100, "fantastic!", IF(B1>50, "well", "poor"))

    =CONCAT("You performed ", IF(B1>100, "fantastic!", IF(B1>50, "well", "poor"))

    Aşağıdaki ekran görüntüsüne baktığınızda, formülün ne işe yaradığına dair herhangi bir açıklamaya ihtiyaç duymayacaksınız:

    Excel'de IF ISERROR / ISNA formülü

    Excel'in modern sürümleri, hataları yakalamak ve başka bir hesaplama veya önceden tanımlanmış değerle değiştirmek için özel işlevlere sahiptir - IFERROR (Excel 2007 ve sonraki sürümlerde) ve IFNA (Excel 2013 ve sonraki sürümlerde). Önceki Excel sürümlerinde, bunun yerine IF ISERROR ve IF ISNA kombinasyonlarını kullanabilirsiniz.

    Aradaki fark, IFERROR ve ISERROR'un #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! ve #NULL! dahil olmak üzere tüm olası Excel hatalarını ele almasıdır. IFNA ve ISNA ise yalnızca #N/A hatalarında uzmanlaşmıştır.

    Örneğin, "sıfıra böl" hatasını (#DIV/0!) özel metninizle değiştirmek için aşağıdaki formülü kullanabilirsiniz:

    =IF(ISERROR(A2/B2), "N/A", A2/B2)

    Excel'de IF fonksiyonunun kullanımı hakkında söyleyeceklerim bu kadar. Okuduğunuz için teşekkür ediyor ve gelecek hafta blogumuzda görüşmeyi umuyorum!

    İndirmek için pratik çalışma kitabı

    Excel IF çoklu kriterler - örnekler (.xlsx dosyası)

    Michael Brown, yazılım araçlarını kullanarak karmaşık süreçleri basitleştirme tutkusuna sahip, kendini adamış bir teknoloji meraklısıdır. Teknoloji endüstrisinde on yılı aşkın deneyimiyle Microsoft Excel ve Outlook'un yanı sıra Google E-Tablolar ve Dokümanlar'daki becerilerini geliştirdi. Michael'ın blogu, bilgisini ve uzmanlığını başkalarıyla paylaşmaya, üretkenliği ve verimliliği artırmaya yönelik takip etmesi kolay ipuçları ve eğitimler sağlamaya adamıştır. İster deneyimli bir profesyonel, ister yeni başlayan olun, Michael'ın blogu, bu temel yazılım araçlarından en iyi şekilde yararlanmak için değerli bilgiler ve pratik tavsiyeler sunar.