Kurs
İç içe IF() ifadeleri, tek bir formülde birden fazla koşulu işleyebilir. Bunları satış raporlarını analiz etmekten müşteri verilerini kategorize etmeye ve hatta panolar oluşturmaya kadar her şey için kullandım. Birden çok formül kullanmak veya fazladan sütunlar eklemek yerine, hepsini yapan tek ve verimli bir formül oluşturabilirsiniz.
Ancak yeni başlarken, bu gelişmiş formülleri anlamak oldukça zordu. Siz de aynı durumdaysanız, Excel ile Veri Analizi kursu veya Excel Temelleri beceri yoluyla başlamanızı şiddetle tavsiye ederim. Bu kaynaklar, iç içe IF() gibi ileri teknikler için sağlam bir temel oluşturmanıza yardımcı olur.
Excel'de İç İçe IF() Nedir?
Tek bir koşulu kontrol etmek için basit bir IF() ifadesi kullanırız. Ancak birden fazla koşulu kontrol etmeniz gerektiğinde, birkaç IF() ifadesini birleştirebilirsiniz — buna iç içe IF() denir. Bu sayede birden çok mantıksal testi art arda çalıştırabilir ve her test için farklı sonuçlar elde edebilirsiniz.
Temel söz dizimi şöyledir:
=IF(condition1, value_if_true, IF(condition2, value_if_true, value_if_false))
İç içe IF() ifadelerini, karmaşık karar verme mantığını tek bir yerde yönetmek için kullanabilirsiniz. Örneğin, puan aralıklarına göre not hesapladığınızı varsayalım. İç içe bir IF() ile şu şekilde bir formül yazabilirsiniz:
=IF(A1>=90, "A", IF(A1>=80, "B", IF(A1>=70, "C", "F")))
Bu formül, A1 hücresindeki puanın 90, 80 veya 70 veya daha büyük olup olmadığını kontrol eder ve buna karşılık gelen notu atar.
Excel'de İç İçe IF() Ne Zaman Kullanılır
İç içe IF() ile her bir koşulu sırasıyla kontrol edebilir, koşul sağlanırsa karşılık gelen değeri döndürebilir; sağlanmazsa bir sonrakine geçebilirsiniz. Nasıl çalıştığını birkaç örnekle göstereyim.
Örnek 1: İç içe IF() ile veri kategorize etme
Diyelim ki çalışanlara şirketteki kıdem yıllarına göre bir grup atamak istiyorum.
| Hizmet yılı | Grup |
|---|---|
| ≥ 10 yıl | Platin |
| 5–9 yıl | Altın |
| < 5 yıl | Gümüş |
Kullanacağım formül şöyle:
=IF(C2>=10, "Platinum", IF(C2>=5, "Gold", "Silver"))
Şimdi nasıl çalıştığını anlayalım:
-
IF(C2>=10, "Platinum", ...)şunu kontrol eder: C2 hücresindeki değer 10 veya daha büyük mü? Eğer öyleyse Platinum döndürür. Değilse bir sonraki koşula geçer. -
Ardından
IF(C2>=5, "Gold", "Silver"), C2 değerinin 5 veya daha büyük olup olmadığını kontrol eder. Eğer öyleyse Gold döndürür. -
Hiçbir koşul sağlanmazsa varsayılan olarak Silver döner.

İç içe IF() uygulama. Görsel: Yazar.
İç içe IF() ifadeleri, verileri hızlıca kategorize etmeniz veya gruplandırmanız gereken bu tür senaryolar için çok kullanışlıdır. Ancak bu sadece bir kullanım şekli. İç içe IF() ifadelerini, bir girdinin belirli bir aralığa düşüp düşmediğini kontrol etmek gibi veri doğrulama için veya belirli ölçütleri karşılayan satırları vurgulamak gibi koşullu biçimlendirme için de kullanabilirsiniz.
Örnek 2: İç içe IF() ile veri doğrulama
Diyelim ki A Sütunundaki değerlerin 10 ile 50 arasında olmasını istiyorum. Bunu uygulamak için veri doğrulaması ayarlayabilirim. İşte nasıl:
-
Doğrulama için aralığı seçin, örneğin
A1:A10. -
Veri sekmesine gidin ve Veri Doğrulama'yı tıklayın.
-
Veri Doğrulama iletişim kutusunda, İzin Ver açılır listesinden Özel seçeneğini seçin.
-
Aşağıdaki formülü Kaynak alanına girin:
=IF(A1>=10, IF(A1<=50, TRUE, FALSE), FALSE)
Bu formül, A1 değerinin 10 ile 50 arasında kalmasını sağlar. Daha kullanıcı dostu hale getirmek için bir hata iletisi de ekleyebilirsiniz. Bunu yapmak için Hata Uyarısı sekmesine gidin. "Değer 10 ile 50 arasında olmalıdır." gibi bir mesaj ayarlayın.

Veri doğrulama için iç içe IF() kullanımı. Görsel: Yazar.
Artık aralık dışında bir değer girerseniz, geçersiz girişleri önlemek ve verilerinizi tutarlı tutmak için hata mesajı görüntülenir.

Hata oluştu. Görsel: Yazar.
Örnek 3: İç içe IF() ile koşullu biçimlendirme
Bir adım daha ileri gidelim. Şimdi, B Sütunundaki değerlerin 10 ile 50 arasında olduğu satırları vurgulamak istiyorum. İşte nasıl yapılır:
-
Biçimlendirmek istediğiniz aralığı seçin, örneğin
B1:B10. -
Şuraya gidin: Giriş > Koşullu Biçimlendirme > Yeni Kural.
-
Hangi hücrelerin biçimlendirileceğini belirlemek için formül kullan seçeneğini tercih edin ve şu formülü girin:
=IF($B1>=10, IF($B1<=50, TRUE, FALSE), FALSE)
4. Biçimlendir'i tıklayın ve bir dolgu rengi seçin. Ardından kuralı uygulamak için Tamam'ı tıklayın.

Koşullu biçimlendirme için iç içe IF() kullanımı. Görsel: Yazar.
Artık ölçütleri karşılayan tüm satırların vurgulandığını görebilirsiniz:

İç içe IF() ile koşullu biçimlendirme. Görsel: Yazar.
İç İçe IF()'i Diğer Excel İşlevleriyle Birleştirmek
İç içe IF() işlevleri tek başına çok yönlüdür, ancak onları diğer Excel işlevleriyle birleştirdiğinizde daha da faydalı hale gelir. Bunu birkaç örnekle göstereyim.
IF() ve VLOOKUP()
VLOOKUP() ile IF() işlevlerini birleştirdiğinizde, belirli ölçütlere göre koşullu olarak veri alıp işleyebilirsiniz. Örneğin bölgelere göre değişen bir fiyat listeniz var. Bölge North ise %10 indirim uygulamak, aksi halde standart fiyatı göstermek istiyorsunuz.
Bunun için şu formülü kullanın:
=IF(C2="North",VLOOKUP(B2,B2:D7,3,FALSE)*0.9,VLOOKUP(B2,B2:D7,3,FALSE))
Yukarıdaki formülde IF() işlevi, C2 hücresindeki bölgenin North olup olmadığını kontrol eder. Eğer öyleyse, VLOOKUP() ile getirilen fiyat 0.9 ile çarpılarak %10 indirim uygulanır. Değilse VLOOKUP() standart fiyatı döndürür.

IF() ile VLOOKUP()'u birleştirin. Görsel: Yazar.
IF() ve SUMIF()
SUMIF() işlevi, belirli ölçütlere göre değerleri toplar. Bunu IF() ile birleştirirseniz, belirli koşulları karşılayan sayıları toplayarak verileri daha iyi analiz edebilirsiniz. Örneğin North bölgesi için toplam satışları hesaplamak istersem şu formülü kullanırım:
=IF(B2="North",(SUMIF(B2:C10,B2,C2:C10)),"")
Yukarıdaki formülde IF() işlevi, B2 hücresindeki bölgenin North olup olmadığını kontrol eder. TRUE ise, SUMIF(), C sütunundaki, North ile eşleşen tüm değerleri toplar. FALSE ise boş bir dize döndürür.

IF() ile SUMIF() birleştirin. Görsel: Yazar.
Formülleri birleştirirken iki kez kontrol ettiğim şeyler
Birden fazla işlevi birleştirmeye başladığımda iş zorlayıcıydı. Karmaşık formüller yazıyor, sonra da basit bir şey yüzünden bozulduklarını görüyordum. Zor yoldan öğrendiğim birkaç ders:
-
Parantezleri takip edin: Hatalarımın çoğu burada oldu. Bir kapanış parantezini kaçırıp formülüm neden çalışmıyor diye saatler harcıyordum. Artık her açılış parantezinin bir kapanışı olduğundan emin olmak için mutlaka kontrol ediyorum. Çok zaman kazandırıyor.
-
Hataları yönetin: Tek bir eksik değer yüzünden formülün çirkin bir hata döndürmesi ne kadar sinir bozucu olabilir bilirsiniz. Artık bu sorunları yakalamak ve özel bir mesaj gibi daha faydalı bir şeyle değiştirmek için
IFERROR()kullanıyorum. -
Adlandırılmış aralıklar kullanın: Aralıkları adlandırmaya başlamadan önce, uzun formüllerde hangi aralığa başvurduğumu kaybediyordum. Sonra onlara net isimler vermeye başladım; böylece formüllerim daha okunur oldu ve başvuru hatası yapma ihtimalim azaldı.
İç İçe IF() Alternatifleri
Tam olmak adına bazı seçeneklere bakalım.
IFS() işlevi
Excel, 64 seviyeye kadar iç içe IF() işlevine izin verir ama dürüst olalım — bu kadar çok koşulu üst üste dizmek, kimsenin hata ayıklamak istemeyeceği türden hataya açık formüller yaratır. Excel 2016 veya daha yenisini kullanıyorsanız IFS() işlevini kullanabilirsiniz. İç içe yazmadan birden fazla koşulu ele almak için daha sade bir alternatiftir.
Söz dizimi şöyledir:
=IFS(logical_test1, value_if_true1, [logical_test2, value_if_true2])
Nasıl çalıştığını göstereyim. Diyelim ki çalışan maaşlarına göre vergi oranlarını hesaplamam gerekiyor; şu formülü uygularım.
=IFS(C2<=30000, "10%", C2<=60000, "20%", C2<=100000, "30%", C2>100000, "40%")
Eğer C2 hücresindeki maaş 30.000 $ veya daha azsa %10 döner. 30.001 $ ile 60.000 $ arasındaysa %20 döner. 60.001 $ ile 100.000 $ arasındaysa %30 döner. 100.000 $ üzerindeyse %40 döner.
IF() işlevinde olduğu gibi, koşulların sırası önemlidir. Excel, TRUE olan ilk koşulu bulur bulmaz değerlendirmeyi durdurur. Bu yüzden hiçbir koşulunuz sağlanmazsa hata alırsınız. Bunu önlemek için sona şöyle varsayılan bir koşul ekleyebilirsiniz:
=IFS(C2<=30000, "10%", C2<=60000, "20%", C2<=100000, "30%", C2>100000, "40%", TRUE, "No Tax")
Artık Excel, maaş koşullarının hiçbiri karşılanmadığında No Tax döndürecek; #N/A hatası vermeyecek.

IFS() işlevini kullanmak. Görsel: Yazar.
& ile IF() ve IF() birleştirme
Alternatif olarak, IF()'i & veya CONCATENATE() gibi işlevlerle birleştirebilirsiniz. Aşağıda her bölge için indirim teklifini görüntülediğim bir örnek var:
=(IF(C2="North", 10%, "") & IF(C2="South",15%, "") & IF(C2="East", 5%, "") & IF(C2="West", 20%, ""))*1
Bu formülde her bir IF() ifadesi bölgeyi kontrol eder ve indirim yüzdesini metin olarak ekler. Sondaki *1, sonucu sayıya dönüştürür. Metin çıktısı istiyorsanız bunu atlayabilirsiniz.

Birden çok IF() işlevini birleştirin. Görsel: Yazar.
CHOOSE() veya SWITCH() işlevleri
Alternatif arıyorsanız, CHOOSE() ve SWITCH() keşfetmeye değerdir. Önceden tanımlanmış seçeneklerden seçim yapmanız veya tek bir değeri birden çok sonuca eşlemeniz gereken basit senaryolarda harikadırlar. Çeşitli işlevlerle bol bol pratik yapabileceğiniz DataCamp'in Excel ile Veri Analizi kursuna göz atın.
İç İçe IF() için Sorun Giderme İpuçları
İç içe IF() formüllerini kullanmaya başladığımda çok hata ile karşılaşıyordum. Çözülemez gibiydiler. Ancak zamanla ve hatalarla, keşke daha önce bilseydim dediğim dersler öğrendim. İşte bazıları:
-
Veri türü karmaşası: Karşılaştırmalarda sayılar ve metinleri karıştırmak beklenmedik sonuçlar doğurabilir. Metin karşılaştırıyorsanız metin olarak biçimlendirildiğinden emin olun. Sayılar için de aynı şekilde.
-
Sınıra takılmak: Excel, iç içe
IF()sayısını 64 seviye ile sınırlar. Formülünüz çalışmayı bırakırsa, sınıra ulaşıp ulaşmadığınızı kontrol edin. O noktada genelde yaklaşımı yeniden düşünmenin veyaIFS()ya daSWITCH()gibi farklı bir işleve geçmenin zamanı gelmiştir.
Formülünüz beklediğiniz gibi davranmıyorsa şunları yapabilirsiniz:
- Parçalara ayırın: Kocaman bir formülü tek seferde hata ayıklamaya çalışmayın. Daha küçük parçalara bölün ve her birini test edin. Bu, sorunun tam olarak nerede olduğunu bulmanıza yardımcı olur.
- Excel'in formül denetim araçlarını kullanın: Bu araçlar hata ayıklarken hayat kurtarır. Formülünüzü adım adım incelemek için Formülü Değerlendir'i veya hücrelerin nasıl bağlandığını görmek için Öncelikleri/Bagımlıları İzle'yi kullanın.
- Hücre veri biçimini kontrol edin: Bazen mesele basit bir biçimlendirme sorunudur. Örneğin, bir hücre metin içeriyor ama sayı gibi görünüyorsa formülünüz beklediğiniz gibi çalışmayabilir. Gerekirse biçimi tekrar kontrol edip düzeltin.
Bir meydan okuma sorusu
Öğrendiklerinizi uygulamak için basit bir meydan okuma. Diyelim ki çalışan primlerini performanslarına ve kıdem yıllarına göre hesaplıyorsunuz. Şu şekilde vermek istiyorsunuz:
- Performans Excellent ve kıdem 5 yıldan fazlaysa %10 prim.
- Performans Good ve kıdem 3 yıldan fazlaysa %5 prim.
- Diğer durumlarda prim yok.
Formülü şöyle yazabilirsiniz:
=IF(B2="Excellent", IF(C2>5, D2*10%, "No Bonus"), IF(B2="Good", IF(C2>3, D2*5%, "No Bonus"), "No Bonus"))
Bunu deneyin ve kendi senaryolarınıza uyarlayıp uyarlayamayacağınıza bakın.
Son Düşünceler
İç içe IF() ifadelerini kullanmaya başladığımda ne kadar zaman kazandığıma ve ne kadar çok yeni olasılık açıldığına şaşırmıştım. Siz de takip ettiyseniz aynı potansiyeli fark etmişsinizdir.
İç içe IF()'i ustalaşmanın anahtarı gerçekten pratiktir. Bu teknikleri kendi projelerinizde ne kadar çok dener ve uygularsanız, o kadar hızlı ikinci doğanız haline gelir. Becerilerinizi daha da ileri taşımaya hazırsanız, DataCamp'teki Excel ile Finansal Modelleme kursunu veya Excel Power Tools ile Veri Analizi beceri yolunu şiddetle öneririm. Bu kaynaklar, formülleri bilmek ile Excel'i gerçek bir iş aracı olarak kullanmak arasındaki farkı kapatmanıza yardımcı olur.
Excel'in sunacağı çok şey var ve iç içe IF() bunlardan sadece biri. Bu formülleri yaratıcı biçimde kullanmaya başladığınızda Excel'in ne kadar yardımcı olabileceğini göreceksiniz.
Karmaşık konuları basitleştirmeyi seven bir içerik stratejistiyim. Splunk, Hackernoon ve Tiiny Host gibi şirketlerin hedef kitleleri için ilgi çekici ve bilgilendirici içerikler üretmelerine yardımcı oldum.
Excel'de İç İçe IF() SSS
Excel'de iç içe IF() ifadesi nedir?
Excel'de iç içe if ifadesi, tek bir ifade içinde birden fazla koşulun değerlendirilmesine olanak tanıyan ve uygulanan mantığa göre farklı sonuçlar sağlayan bir formüldür.
Excel'de iç içe IF() ifadesini nasıl yazarım?
İç içe bir if ifadesi yazmak için, başlangıçta bir IF işleviyle başlayın; ardından ek koşulları değerlendirmek için DOĞRU veya YANLIŞ bağımsız değişkenleri içine ilave IF işlevleri yerleştirin.
İç içe IF() ifadelerini ne zaman kullanmalıyım?
Birden fazla koşulun değerlendirilmesi ve bu koşullara göre farklı sonuçların döndürülmesi gereken karmaşık karar verme görevleriyle uğraşırken iç içe if ifadelerini kullanın.
İç içe IF() ifadeleri diğer Excel işlevleriyle birleştirilebilir mi?
Evet, iç içe if ifadeleri, işlevselliği artırmak ve daha kapsamlı veri analizi sağlamak için VLOOKUP veya SUMIF gibi diğer işlevlerle birleştirilebilir.
İç içe IF() ifadelerini kullanmanın bazı yaygın tuzakları nelerdir?
Yaygın hatalar arasında okunması ve hata ayıklaması zor olan aşırı karmaşık formüller oluşturmak bulunur. İç içe if ifadelerini kullanırken netliği ve düzeni korumak önemlidir.
Excel iç içe IF() işlevlerinin sayısını sınırlar mı?
Evet. Eski sürümlerde (Excel 2003 ve öncesi), en fazla 7 seviyeye kadar IF() işlevini iç içe kullanabilirsiniz. Excel 2007'den itibaren, bu sınır tek bir formülde 64 iç içe IF() seviyesine çıkarılmıştır.
Excel'in iç içe yazma sınırı neden var?
Bu sınır, performansı korumak ve yönetilmesi, hata ayıklanması ve hesaplanması zor, aşırı karmaşık formülleri önlemek için vardır.
