Excel IF функција со повеќе услови

  • Споделете Го Ова
Michael Brown

Упатството покажува како да креирате повеќе изјави IF во Excel со AND, како и со логика ИЛИ. Исто така, ќе научите како да користите IF заедно со други функции на Excel.

Во првиот дел од нашето упатство за Excel IF, разгледавме како да конструираме едноставна изјава IF со еден услов за текст, броеви, датуми, празни и непразни. Меѓутоа, за моќна анализа на податоци, честопати можеби ќе треба да оцените повеќе услови истовремено. Примерите на формулата подолу ќе ви ги покажат најефективните начини да го направите ова.

    Како да ја користите функцијата IF со повеќе услови

    Во суштина, постојат два вида на АКО формула со повеќе критериуми базирани на логиката И / ИЛИ . Следствено, во логичкиот тест на вашата формула IF, треба да користите една од овие функции:

    • AND функцијата - враќа TRUE ако сите услови се исполнети; НЕТОЧНО инаку.
    • ИЛИ функцијата - враќа TRUE ако кој било услов е исполнет; НЕТОЧНО инаку.

    За подобро да се илустрира поентата, ајде да истражиме неколку примери на формули од реалниот живот.

    Excel IF изјава со повеќе услови (AND логика)

    The генеричката формула на Excel IF со два или повеќе услови е ова:

    IF(AND( услов1, услов2, …), value_if_true, value_if_false)

    Преведено на човек јазик, формулата вели: Ако условот 1 е вистинит И условот 2 е точно, вратете вредност_ако_точно ; else return value_if_false .

    Да претпоставиме дека имате табела со резултати од два теста во колоните Б и В. За да го положи завршниот испит, студентот мора да ги има двата оценки поголеми од 50.

    За логичкиот тест, ја користите следнава изјава AND: AND(B2>50, C2>50)

    Ако двата услови се вистинити, формулата ќе врати „Поминете“; ако некој услов е неточен - „Не успеа“.

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

    Лесно, нели? Сликата од екранот подолу докажува дека нашата формула Excel IF /AND работи правилно:

    На сличен начин, можете да ја користите функцијата Excel IF со повеќе текстни услови .

    За на пример, за излез „Добро“ ако и B2 и C2 се поголеми од 50, „Bad“ во спротивно, формулата е:

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

    Важна забелешка! Функцијата И ги проверува сите услови , дури и ако веќе тестираните се оценети на FALSE. Таквото однесување е малку невообичаено бидејќи во повеќето програмски јазици, последователните услови не се тестираат ако некој од претходните тестови се вратил FALSE.

    Во пракса, навидум точната изјава IF може да резултира со грешка поради ова специфичност. На пример, формулата подолу ќе врати #DIV/0! (грешка „подели со нула“) ако ќелијата A2 е еднаква на 0:

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

    За да го избегнете ова, треба да користите вгнездена IF функција:

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

    За повеќе информации, погледнете ја формулата IF AND во Excel.

    Excel IF функцијата со повеќеуслови (ИЛИ логика)

    За да направите една работа ако кој услов е исполнет, во спротивно направи нешто друго, користете ја оваа комбинација од функциите IF и OR:

    IF(OR( услов 1 , услов2 , ...), value_if_true, value_if_false)

    Разликата од формулата IF / AND дискутирана погоре е дека Excel враќа ТОЧНО ако некој од наведените услови е точно.

    Значи, ако во претходната формула, користиме ИЛИ наместо И:

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

    Тогаш секој што има повеќе од 50 поени во двата испити ќе добие „Положи“ во колона Г. Со такви услови, нашите студенти имаат поголеми шанси да го положат завршниот испит (Ивет е особено несреќна што паднала со само 1 поен :)

    Совет. Во случај да креирате повеќе IF изјава со текст и тестирате вредност во една ќелија со логиката ИЛИ (т.е. ќелијата може да биде „ова“ или „тоа“), тогаш можете да изградите покомпактна формула која користи константа на низа.

    На пример, за да се означи продажбата како „затворена“ ако ќелијата B2 е или „испорачана“ или „платена“, формулата е:

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

    Повеќе примери за формула може да се најдат во функцијата Excel IF OR.

    IF со повеќекратни AND & ИЛИ изјави

    Ако вашата задача бара евалуација на неколку групи на повеќе услови, ќе мора да ги користите и двете AND & ИЛИ функционира во исто време.

    Во нашата примерок табела, да претпоставиме дека ги имате следните критериуми за проверка на резултатите од испитот:

    • Услов 1:испит 1>50 и испит 2>50
    • Услов 2: испит 1>40 и испит 2>60

    Ако некој од условите е исполнет, завршниот испит се смета за положен.

    На прв поглед, формулата изгледа малку незгодна, но всушност не е! Вие само го изразувате секој од горенаведените услови како изјава И и ги вгнездувате во функцијата ИЛИ (бидејќи не е неопходно да се исполнат двата услови, ќе бидат доволни едниот и другиот):

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

    Потоа, користете функцијата ИЛИ за логичкиот тест на IF и наведете ги саканите вредности value_if_true и value_if_false . Како резултат на тоа, ја добивате следната формула IF со повеќе AND / OR услови:

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

    Сликата од екранот подолу покажува дека сме ја направиле формулата правилно:

    Природно , не сте ограничени на користење само две И/ИЛИ функции во вашите формули IF. Можете да користите онолку од нив колку што бара вашата деловна логика, под услов:

    • Во Excel 2007 и понова верзија, немате повеќе од 255 аргументи, а вкупната должина на формулата IF не надминува 8.192 знаци.
    • Во Excel 2003 и пониски, нема повеќе од 30 аргументи, а вкупната должина на вашата формула IF не надминува 1.024 знаци.

    Вгнездена изјава IF на проверете повеќе логички тестови

    Ако сакате да оцените повеќе логички тестови во една формула, тогаш можете да вгнездите неколку функции една во друга. Таквите функции се нарекуваат вгнездениIF функции . Тие се покажуваат особено корисни кога сакате да вратите различни вредности во зависност од резултатите на логичките тестови.

    Еве еден типичен пример: да претпоставиме дека сакате да ги квалификувате постигањата на учениците како „ Добри “, „ Задоволително “ и „ Слабо “ врз основа на следните резултати:

    • Добро: 60 или повеќе (>=60)
    • Задоволително: помеѓу 40 и 60 (>40 и <60)
    • Слабо: 40 или помалку (<=40)

    Пред да напишете формула, разгледајте го редоследот од функциите што ќе ги вгнездите. Excel ќе ги оцени логичките тестови по редоследот што се појавуваат во формулата. Откако условот ќе се оцени на ТОЧНО, следните услови не се тестираат, што значи дека формулата запира по првиот ВИСТИНСКИ резултат.

    Во нашиот случај, функциите се подредени од најголем до најмал:

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

    Секако, можете да вгнездувате повеќе функции доколку е потребно (до 64 во модерните верзии).

    За повеќе информации, погледнете Како да користите повеќе вгнездени IF изјави во Excel.

    Формула за низа IF Excel со повеќе услови

    Друг начин да добиете Excel IF за тестирање повеќе услови е со користење на формула за низа.

    За да ги оцените условите со логиката И, користете ја ѕвездичката:

    IF( услов1 ) * ( услов2 ) * …, value_if_true, value_if_false)

    За да ги тестирате условите со логиката ИЛИ, користете го знакот плус:

    IF( услов1 ) + ( услов2 ) + …,value_if_true, value_if_false)

    За правилно да ја пополните формулата за низа, притиснете ги копчињата Ctrl + Shift + Enter заедно. Во Excel 365 и Excel 2021, ова функционира и како редовна формула поради поддршката за динамички низи.

    На пример, за да се добие „Pass“ ако и B2 и C2 се поголеми од 50, формулата е:

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

    Во мојот Excel 365, нормалната формула работи добро (како што можете да видите на сликите од екранот погоре). Во Excel 2019 и пониски, не заборавајте да го направите формула за низа со користење на кратенката Ctrl + Shift + Enter.

    За да оцените повеќе услови со логиката ИЛИ, формулата е:

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

    Користење на IF заедно со други функции

    Овој дел објаснува како да користите IF во комбинација со други функции на Excel и какви придобивки ви дава ова.

    Пример 1. Ако #N /Грешка во VLOOKUP

    Кога VLOOKUP или друга функција за пребарување не може да најде нешто, враќа грешка #N/A. За да ги направите вашите табели да изгледаат поубаво, можете да вратите нула, празен или специфичен текст ако #N/A. За ова, користете ја оваа генеричка формула:

    IF(ISNA(VLOOKUP(…)), value_if_na , VLOOKUP(…))

    На пример:

    Ако #N/ Враќање 0:

    Ако вредноста за пребарување во E1 не се најде, формулата враќа нула.

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

    Ако #N/A врати празно:

    Ако вредноста за пребарување не е пронајдена, формулата не враќа ништо (празна низа).

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

    Ако #N/A врати одреден текст:

    Ако бараната вредност не е пронајдена, наформулата враќа специфичен текст.

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

    За повеќе примери на формула, погледнете го VLOOKUP со изјавата IF во Excel.

    Пример 2. IF со SUM, AVERAGE, MIN и MAX функции

    За да се сумираат вредностите на ќелиите врз основа на одредени критериуми, Excel ги обезбедува функциите SUMIF и SUMIFS.

    Во некои ситуации, вашата деловна логика може да бара вклучување на функцијата SUM во логичкиот тест на IF. На пример, за враќање на различни текстуални етикети во зависност од збирот на вредностите во B2 и C2, формулата е:

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

    Ако збирот е поголем од 130, резултатот е „добар "; ако е поголемо од 110 – „задоволува“, ако е 110 или пониско – „лошо“.

    На сличен начин, можете да ја вградите функцијата AVERAGE во логичкиот тест на IF и да вратите различни ознаки врз основа на просечната оценка :

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

    Претпоставувајќи дека вкупниот резултат е во колоната D, можете да ги идентификувате највисоките и најниските вредности со помош на функциите MAX и MIN:

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

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

    За да ги имате двете етикети во една колона, вметнете ги горенаведените функции една во друга:

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

    Исто така, можете да користите IF заедно со вашите сопствени функции. На пример, можете да го комбинирате со GetCellColor или GetCellFontColor за да вратите различни резултати врз основа на бојата на ќелијата.

    Покрај тоа, Excel обезбедува голем број функции за пресметување податоци врз основа на услови. За детални примери на формула, ве молиме проверете го следновоупатства:

    • COUNTIF - брои ќелии што исполнуваат услов
    • COUNTIFS - брои ќелии со повеќе критериуми
    • SUMIF - условно сумира ќелии
    • SUMIFS - сумира ќелии со повеќе критериуми

    Пример 3. IF со ISNUMBER, ISTEXT и ISBLANK

    За да се идентификува текст, броеви и празни ќелии, Microsoft Excel обезбедува специјални функции како што се ISTEXT, ISNUMBER и ISBLANK. Со нивно поставување во логичките тестови на три вгнездени IF искази, можете да ги идентификувате сите различни типови податоци во еден потег:

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

    Пример 4. IF и CONCATENATE

    Да Изнесете го резултатот од IF и некој текст во една ќелија, користете ги заедно функциите CONCATENATE или CONCAT (во Excel 2016 - 365) и IF. На пример:

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

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

    Гледајќи ја сликата од екранот подолу, тешко дека ќе ви треба објаснување за тоа што прави формулата:

    АКО ISERROR / ISNA формула во Excel

    Современите верзии на Excel имаат специјални функции за заробување на грешките и нивно заменување со друга пресметка или однапред дефинирана вредност - IFERROR (во Excel 2007 и подоцна) и IFNA (во Excel 2013 и подоцна). Во претходните верзии на Excel, наместо тоа, можете да ги користите комбинациите IF ISERROR и IF ISNA.

    Разликата е во тоа што IFERROR и ISERROR се справуваат со сите можни грешки на Excel, вклучувајќи #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0!, и #NULL!. Додека IFNA и ISNA се специјализирани само за #N/A грешки.

    На пример, дазаменете ја грешката „подели со нула“ (#DIV/0!) со вашиот сопствен текст, можете да ја користите следнава формула:

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

    И тоа е сè што имам да кажам за користењето на Функцијата IF во Excel. Ви благодарам што прочитавте и се надевам дека ќе се видиме на нашиот блог следната недела!

    Вежбајте работна книга за преземање

    Excel IF повеќе критериуми - примери (датотека .xlsx)

    Мајкл Браун е посветен технолошки ентузијаст со страст за поедноставување на сложените процеси користејќи софтверски алатки. Со повеќе од една деценија искуство во технолошката индустрија, тој ги усоврши своите вештини во Microsoft Excel и Outlook, како и Google Sheets и Docs. Блогот на Мајкл е посветен на споделување на своето знаење и експертиза со другите, обезбедувајќи лесни за следење совети и упатства за подобрување на продуктивноста и ефикасноста. Без разлика дали сте искусен професионалец или почетник, блогот на Мајкл нуди вредни сознанија и практични совети за да го извлечете максимумот од овие основни софтверски алатки.