Excel IF funktsiyasi bir nechta shartlarga ega

  • Buni Baham Ko'Ring
Michael Brown

O'quv qo'llanma Excelda AND va OR mantiqi bilan bir nechta IF iboralarini qanday yaratishni ko'rsatadi. Shuningdek, siz IF dan Excelning boshqa funksiyalari bilan birgalikda qanday foydalanishni o'rganasiz.

Excel IF bo'yicha o'quv qo'llanmamizning birinchi qismida biz matn uchun bitta shart bilan oddiy IF operatorini qanday qurishni ko'rib chiqdik, raqamlar, sanalar, bo'sh joylar va bo'sh bo'lmaganlar. Kuchli ma'lumotlarni tahlil qilish uchun siz ko'pincha bir vaqtning o'zida bir nechta shartlarni baholashingiz kerak bo'lishi mumkin. Quyidagi formula misollari buni amalga oshirishning eng samarali usullarini ko'rsatib beradi.

    IF funksiyasidan bir nechta shartlar bilan qanday foydalanish

    Aslida, ikki xil bo'ladi. VA / YOKI mantiqqa asoslangan bir nechta mezonlarga ega IF formulasi . Shunday qilib, IF formulangizni mantiqiy tekshirishda siz quyidagi funksiyalardan birini qo'llashingiz kerak:

    • AND funksiyasi - barcha shartlar bajarilgan bo'lsa, TRUE qaytaradi; aks holda FALSE.
    • OR funksiyasi - har qanday bitta shart bajarilsa, TRUE qiymatini qaytaradi; Aks holda YOLG'ON.

    Mazkur fikrni yaxshiroq tushuntirish uchun keling, ba'zi real hayotdagi formulalar misollarini ko'rib chiqamiz.

    Bir nechta shartli (VA mantiqiy) Excel IF iborasi

    Ikki yoki undan ortiq shartli Excel IF ning umumiy formulasi quyidagicha:

    AGAR (VA( shart1, shart2, …), qiymat_agar_to'g'ri, qiymat_agar_noto'g'ri)

    Odam tiliga tarjima qilingan tilda formulada aytiladi: Agar 1-shart to'g'ri va 2-shart to'g'ri bo'lsa, qaytaring haqiqat_agar_qiymat ; else value_if_false ni qaytaradi.

    Sizda B va C ustunlarida ikkita test ballari keltirilgan jadval mavjud deylik. Yakuniy imtihondan oʻtish uchun talaba ikkala ball ham 50 dan yuqori boʻlishi kerak.

    Mantiqiy test uchun siz quyidagi AND iborasidan foydalanasiz: AND(B2>50, C2>50)

    Agar ikkala shart ham to'g'ri bo'lsa, formula "O'tish" ni qaytaradi; agar biron bir shart noto'g'ri bo'lsa - "Muvaffaqiyatsiz".

    =IF(AND(B2>50, B2>50), "Pass", "Fail")

    Oson, shunday emasmi? Quyidagi skrinshot bizning Excel IF /AND formulamiz to'g'ri ishlayotganini tasdiqlaydi:

    Shunga o'xshab, siz Excel IF funksiyasidan bir nechta matn shartlari bilan foydalanishingiz mumkin.

    uchun Misol uchun, agar B2 va C2 ​​ikkalasi ham 50 dan katta bo'lsa, "Yaxshi" chiqarish uchun, aks holda "Yomon" formulasi:

    =IF(AND(B2="pass", C2="pass"), "Good!", "Bad")

    Muhim eslatma! AND funksiyasi barcha shartlarni tekshiradi, hatto sinovdan o'tgan shart(lar) YOLG'ON deb baholangan bo'lsa ham. Bunday xatti-harakatlar biroz g'ayrioddiy, chunki ko'pchilik dasturlash tillarida oldingi testlardan birortasi YOLG'ON bo'lsa, keyingi shartlar tekshirilmaydi.

    Amalda, to'g'ri ko'rinadigan IF iborasi shu sababli xatolikka olib kelishi mumkin. o'ziga xoslik. Masalan, quyidagi formula #DIV/0 ni qaytaradi! ("nolga bo'lish" xatosi) agar A2 katak 0 ga teng bo'lsa:

    =IF(AND(A20, (1/A2)>0.5),"Good", "Bad")

    Buning oldini olish uchun ichki o'rnatilgan IF funktsiyasidan foydalaning:

    =IF(A20, IF((1/A2)>0.5, "Good", "Bad"), "Bad")

    Qo'shimcha ma'lumot olish uchun Excel-dagi IF VA formulasiga qarang.

    Excel IF funksiyasi bir nechta.shartlar (YOKI mantiq)

    Agar har qanday shart bajarilsa, bitta narsani bajarish, aks holda boshqa ishni bajarish uchun IF va OR funksiyalarining ushbu birikmasidan foydalaning:

    IF(OR(<) 1>shart1 , shart2 , …), qiymat_agar_to'g'ri, qiymat_agar_noto'g'ri)

    Yuqorida ko'rib chiqilgan IF / VA formulasidan farq shundaki, Excel belgilangan shartlardan biri to'g'ri bo'lsa, TRUE qaytaradi.

    Demak, agar oldingi formulada AND o‘rniga OR dan foydalansak:

    =IF(OR(B2>50, B2>50), "Pass", "Fail")

    U holda har ikkala imtihonda 50 balldan yuqori ball to‘plagan har bir kishi “O‘tish”ni oladi. ustun D. Bunday sharoitda talabalarimiz yakuniy imtihondan o'tish uchun ko'proq imkoniyatga ega (Yvette atigi 1 ball bilan muvaffaqiyatsizlikka uchragani juda omadsiz :)

    Maslahat. Agar siz matnli bilan bir nechta IF iborasini yaratayotgan bo'lsangiz va OR mantiqi bilan bitta katakdagi qiymatni sinab ko'rsangiz (ya'ni, hujayra "bu" yoki "bu" bo'lishi mumkin), unda siz yanada ixchamroq bo'lishingiz mumkin. massiv konstantasi yordamida formula.

    Masalan, agar B2 yacheykasi "yetkazib berilgan" yoki "to'langan" bo'lsa, sotuvni "yopiq" deb belgilash uchun formula:

    =IF(OR(B2={"delivered", "paid"}), "Closed", "")

    Ko'proq formula misollarini Excel IF OR funksiyasida topish mumkin.

    IF bilan bir nechta AND & OR iboralari

    Agar sizning vazifangiz bir nechta shartlarning bir nechta to'plamini baholashni talab qilsa, siz ikkalasidan ham VA & OR bir vaqtning o'zida ishlaydi.

    Namunaviy jadvalimizda imtihon natijalarini tekshirish uchun sizda quyidagi mezonlar mavjud deylik:

    • 1-shart:imtihon1>50 va imtihon2>50
    • 2-shart: imtihon1>40 va imtihon2>60

    Agar shartlardan biri bajarilsa, yakuniy imtihon o'tgan hisoblanadi.

    Bir qarashda, formula biroz qiyin ko'rinadi, lekin aslida unday emas! Siz yuqoridagi shartlarning har birini AND ifodasi sifatida ifodalab, ularni OR funksiyasiga joylashtirasiz (chunki ikkala shartni ham bajarish shart emas, ikkalasi ham kifoya qiladi):

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

    Keyin, foydalaning IF ni mantiqiy tekshirish uchun OR funksiyasi va kerakli agar_haqiqat_qiymat va agar_noto'g'ri qiymat qiymatlarini taqdim eting. Natijada siz bir nechta VA / YOKI shartlarga ega quyidagi IF formulasini olasiz:

    =IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")

    Quyidagi skrinshot formulani toʻgʻri bajarganimizni koʻrsatadi:

    Tabiiyki , siz IF formulalarida faqat ikkita VA/YOKI funksiyadan foydalanish bilan cheklanmaysiz. Siz ulardan biznes mantiqingiz talab qiladigan darajada foydalanishingiz mumkin, agar:

    • Excel 2007 va undan yuqori versiyalarida sizda 255 dan ortiq argument bo'lmasligi va IF formulasining umumiy uzunligi IF dan oshmasligi kerak. 8192 belgi.
    • Excel 2003 va undan pastroq versiyalarida 30 dan ortiq argument mavjud emas va IF formulangizning umumiy uzunligi 1024 belgidan oshmaydi.

    Ichkariga kiritilgan IF bayonoti bir nechta mantiqiy testlarni tekshiring

    Agar siz bir formula ichida bir nechta mantiqiy testlarni baholamoqchi bo'lsangiz, u holda bir nechta funksiyalarni bir-biriga joylashtirishingiz mumkin. Bunday funksiyalar uyalangan deb ataladiIF funktsiyalari . Ular, ayniqsa, mantiqiy testlar natijalariga qarab turli qiymatlarni qaytarmoqchi bo'lsangiz, foydali bo'ladi.

    Mana odatiy misol: deylik, siz talabalarning yutuqlarini " Yaxshi " deb belgilamoqchisiz, Quyidagi ballar asosida " Qoniqarli " va " Yomon ":

    • Yaxshi: 60 yoki undan ortiq (>=60)
    • Qoniqarli: 40 dan 60 gacha (>40 va <60)
    • Yomon: 40 yoki undan kam (<=40)

    Formula yozishdan oldin tartibni hisobga oling. siz joylashtirmoqchi bo'lgan funktsiyalar. Excel mantiqiy testlarni formulada ko'rsatilgan tartibda baholaydi. Shart TRUE deb baholansa, keyingi shartlar sinovdan o‘tkazilmaydi, ya’ni formula birinchi TRUE natijadan keyin to‘xtaydi.

    Bizning holatlarimizda funksiyalar eng kattadan kichigigacha tartiblangan:

    =IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))

    Tabiiyki, agar kerak bo'lsa, ko'proq funksiyalarni joylashtirishingiz mumkin (zamonaviy versiyalarda 64 tagacha).

    Qo'shimcha ma'lumot olish uchun Excelda bir nechta ichki o'rnatilgan IF bayonotlaridan qanday foydalanishni ko'ring.

    Bir nechta shartli Excel IF massiv formulasi

    Sinash uchun Excel IF ni olishning yana bir usuli bir nechta shartlar massiv formulasidan foydalaniladi.

    Shartlarni AND mantiqi bilan baholash uchun yulduzchadan foydalaning:

    IF( shart1 ) * ( shart2 ) * …, qiymat_agar_to'g'ri, qiymat_agar_noto'g'ri)

    Shartlarni OR mantiqi bilan sinab ko'rish uchun qo'shimcha belgisidan foydalaning:

    IF( shart1 ) + ( shart2 ) + …,qiymat_agar_to'g'ri, qiymat_agar_false)

    Masiv formulasini to'g'ri to'ldirish uchun Ctrl + Shift + Enter tugmalarini birga bosing. Excel 365 va Excel 2021 da, bu dinamik massivlarni qo'llab-quvvatlashi tufayli oddiy formula sifatida ham ishlaydi.

    Masalan, agar B2 va C2 ​​ikkalasi ham 50 dan katta bo'lsa, "O'tish" ni olish uchun formula:

    =IF((B2>50) * (C2>50), "Pass", "Fail")

    Mening Excel 365-da oddiy formula yaxshi ishlaydi (yuqoridagi skrinshotlarda ko'rib turganingizdek). Excel 2019 va undan pastroq versiyalarida Ctrl + Shift + Enter yorliqlari yordamida uni massiv formulasiga aylantirishni unutmang.

    YOKI mantiq bilan bir nechta shartlarni baholash uchun formula:

    =IF((B2>50) + (C2>50), "Pass", "Fail")

    IF dan boshqa funksiyalar bilan birgalikda foydalanish

    Ushbu bo'limda IF dan boshqa Excel funksiyalari bilan birgalikda qanday foydalanish va bu sizga qanday foyda keltirishi tushuntiriladi.

    Misol 1. Agar #N bo'lsa /VLOOKUP-dagi xato

    VLOOKUP yoki boshqa qidiruv funksiyasi biror narsani topa olmasa, u #N/A xatosini qaytaradi. Jadvallaringizni yanada chiroyli qilish uchun, agar #N/A boʻlsa, nol, boʻsh yoki aniq matnni qaytarishingiz mumkin. Buning uchun quyidagi umumiy formuladan foydalaning:

    IF(ISNA(VLOOKUP(…)), value_agar_na , VLOOKUP(…))

    Masalan:

    Agar #N/ Qaytish 0:

    Agar E1 da qidirish qiymati topilmasa, formula nolni qaytaradi.

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

    Agar #Yo'q bo'lsa:

    Agar qidiruv qiymati topilmasa, formula hech narsani qaytarmaydi (bo'sh qator).

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

    Agar #N/A ma'lum matnni qaytarsa:

    Agar qidirish qiymati topilmadi, theformula ma'lum matnni qaytaradi.

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

    Ko'proq formula misollari uchun Excelda IF iborasi bilan VLOOKUP ga qarang.

    2-misol. IF SUM, AVERAGE, MIN va MAX bilan. funktsiyalar

    Ma'lum mezonlar asosida hujayra qiymatlarini yig'ish uchun Excel SUMIF va SUMIFS funksiyalarini taqdim etadi.

    Ba'zi hollarda biznes mantiqingiz IF mantiqiy testiga SUM funksiyasini kiritishni talab qilishi mumkin. Misol uchun, B2 va C2 ​​qiymatlari yig'indisiga qarab turli matn teglarini qaytarish uchun formula:

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

    Agar yig'indi 130 dan katta bo'lsa, natija "yaxshi" "; agar 110 dan katta bo'lsa - "qoniqarli", 110 yoki undan past bo'lsa - "yomon".

    Shunga o'xshab, siz IF mantiqiy testiga O'RTA funksiyasini kiritishingiz va o'rtacha ball asosida turli teglarni qaytarishingiz mumkin. :

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

    Umumiy ball D ustunida boʻlsa, MAX va MIN funksiyalari yordamida eng yuqori va eng past qiymatlarni aniqlash mumkin:

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    Ikkala yorliq bitta ustunda boʻlishi uchun yuqoridagi funksiyalarni bir-biriga joylashtiring:

    =IF(D2=MAX($D$2:$D$10), "Best result", IF(D2=MIN($D$2:$D$10), "Worst result", ""))

    Shunga oʻxshab, siz IF-dan oʻz shaxsiy sozlamalaringiz bilan birga foydalanishingiz mumkin. Masalan, siz uni GetCellColor yoki GetCellFontColor bilan birlashtirib, hujayra rangiga asoslangan turli natijalarni qaytarishingiz mumkin.

    Bundan tashqari, Excel shartlar asosida ma’lumotlarni hisoblash uchun bir qator funksiyalarni taqdim etadi. Batafsil formula misollari uchun, iltimos, quyidagilarni tekshiringo'quv qo'llanmalari:

    • COUNTIF - shartga javob beradigan hujayralarni hisoblash
    • COUNTIFS - bir nechta mezonlarga ega bo'lgan hujayralarni hisoblash
    • SUMIF - shartli yig'indi hujayralar
    • SUMIFS - bir nechta mezonli katakchalarni yig'ish

    Misol 3. IF ISNUMBER, ISTEXT va ISBLANK

    Matn, raqamlar va bo'sh kataklarni aniqlash uchun Microsoft Excel ISTEXT, ISNUMBER kabi maxsus funksiyalarni taqdim etadi. va ISBLANK. Ularni uchta ichki o'rnatilgan IF iboralarining mantiqiy testlariga qo'yib, siz bir vaqtning o'zida barcha turli ma'lumotlar turlarini aniqlashingiz mumkin:

    =IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))

    4-misol. IF va CONCATENATE

    To IF natijasini va bir nechta matnni bitta katakka chiqaring, CONCATENATE yoki CONCAT (Excel 2016 - 365 da) va IF funktsiyalaridan birgalikda foydalaning. Masalan:

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

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

    Quyidagi skrinshotga qarab, formula nima qilishini tushuntirishga hojat yo'q:

    AGAR ISERROR / Excel'dagi ISNA formulasi

    Excelning zamonaviy versiyalarida xatolarni aniqlash va ularni boshqa hisob yoki oldindan belgilangan qiymat bilan almashtirish uchun maxsus funksiyalar mavjud - IFERROR (Excel 2007 va undan keyingi versiyalarida) va IFNA (Excel 2013 va undan keyingi versiyalarida). Oldingi Excel versiyalarida siz IF ISHA ISNA va IF ISNA kombinatsiyalaridan foydalanishingiz mumkin.

    Farqi shundaki, IFERROR va ISNA barcha mumkin bo'lgan Excel xatolarini, jumladan #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! va #NULL!. IFNA va ISNA faqat #N/A xatolarga ixtisoslashgan.

    Masalan,"nolga bo'lish" xatosini (#DIV/0!) o'zingizning shaxsiy matningiz bilan almashtirsangiz, quyidagi formuladan foydalanishingiz mumkin:

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

    Va men buni ishlatish haqida aytishim kerak. Excelda IF funktsiyasi. O'qiganingiz uchun tashakkur va keyingi haftada blogimizda ko'rishga umid qilaman!

    Yuklab olish uchun mashq kitobi

    Excel IF bir nechta mezonlari - misollar (.xlsx fayli)

    Maykl Braun - dasturiy vositalardan foydalangan holda murakkab jarayonlarni soddalashtirishga ishtiyoqi bo'lgan maxsus texnologiya ishqibozi. Texnologiya sohasida o'n yildan ortiq tajribaga ega bo'lgan holda, u Microsoft Excel va Outlook, shuningdek, Google Sheets va Docs dasturlarida o'z mahoratini oshirdi. Mayklning blogi o'z bilimi va tajribasini boshqalar bilan baham ko'rishga, samaradorlik va samaradorlikni oshirish uchun amal qilish oson maslahatlar va o'quv qo'llanmalariga bag'ishlangan. Tajribali mutaxassismisiz yoki yangi boshlovchi boʻlasizmi, Mayklning blogi ushbu muhim dasturiy vositalardan maksimal darajada foydalanish uchun qimmatli tushunchalar va amaliy maslahatlarni taqdim etadi.