Excel IF függvény több feltétellel

  • Ossza Meg Ezt
Michael Brown

A bemutató megmutatja, hogyan hozhat létre több IF utasítást az Excelben ÉS és VAGY logikával. Megtanulja továbbá, hogyan használhatja az IF-et más Excel-funkciókkal együtt.

Az Excel IF oktatóanyagunk első részében azt néztük meg, hogyan lehet egyszerű IF utasítást szerkeszteni egy-egy feltétellel szöveg, számok, dátumok, üres és nem üres részek esetén. Erőteljes adatelemzéshez azonban gyakran szükség lehet több feltétel egyidejű kiértékelésére. Az alábbi képletpéldák megmutatják ennek leghatékonyabb módjait.

    Hogyan használjuk az IF függvényt több feltétellel

    Lényegében kétféle IF formula több kritériummal az ÉS / VAGY logika alapján Következésképpen az IF-képlet logikai tesztjében az alábbi függvények egyikét kell használnia:

    • AND függvény - TRUE-t ad vissza, ha minden feltétel teljesülnek; egyébként FALSE.
    • OR függvény - TRUE-t ad vissza, ha bármilyen egyedi feltétel teljesül; ellenkező esetben FALSE.

    Hogy jobban szemléltessük a lényeget, vizsgáljunk meg néhány valós példát a képletekre.

    Excel IF utasítás több feltétellel (AND logika)

    Az Excel általános képlete a következő: IF két vagy több feltétel esetén:

    IF(AND( feltétel1 , feltétel2 , ...), value_if_true, value_if_false)

    Emberi nyelvre lefordítva a képlet a következőt mondja: Ha az 1. feltétel igaz ÉS a 2. feltétel igaz, adjuk vissza a következő értéket value_if_true ; else return value_if_false .

    Tegyük fel, hogy van egy táblázat, amely a B és C oszlopban két teszt pontszámait tartalmazza. A záróvizsga sikeres letételéhez a diáknak mindkét pontszámnak 50-nél nagyobbnak kell lennie.

    A logikai teszthez a következő AND utasítást használja: AND(B2>50, C2>50)

    Ha mindkét feltétel igaz, a képlet a "Pass" értéket adja vissza; ha bármelyik feltétel hamis - a "Fail" értéket.

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

    Egyszerű, ugye? Az alábbi képernyőkép bizonyítja, hogy az Excel IF /AND képletünk jól működik:

    Hasonló módon használhatja az Excel IF funkcióját többszörös szöveges feltételek .

    Például, ha a "Jó" értéket szeretnénk kiadni, ha B2 és C2 értéke egyaránt nagyobb, mint 50, egyébként pedig "Rossz", a képlet a következő:

    =IF(AND(B2="megfelelt", C2="megfelelt"), "Jó!", "Rossz")

    Fontos megjegyzés! Az AND függvény ellenőrzi minden feltétel Az ilyen viselkedés kissé szokatlan, mivel a legtöbb programozási nyelvben a következő feltételek nem kerülnek tesztelésre, ha az előző tesztek bármelyike FALSE-t adott vissza.

    A gyakorlatban egy látszólag helyes IF utasítás hibát eredményezhet e sajátosság miatt. Például az alábbi képlet #DIV/0! ("osztani nullával" hiba) eredményt adna, ha az A2 cella 0-val egyenlő:

    =IF(AND(A20, (1/A2)>0.5), "Jó", "Rossz")

    Ennek elkerülése érdekében használjon beágyazott IF függvényt:

    =IF(A20, IF((1/A2)>0.5, "Jó", "Rossz"), "Rossz"), "Rossz")

    További információért lásd: IF AND formula az Excelben.

    Excel IF függvény több feltétellel (OR logika)

    Egy dolgot tenni, ha bármilyen feltétel teljesül, különben valami mást csinál, használja az IF és OR függvények kombinációját:

    IF(OR( feltétel1 , feltétel2 , ...), value_if_true, value_if_false)

    A különbség a fent tárgyalt IF / AND képlethez képest az, hogy az Excel TRUE-t ad vissza, ha a megadott feltételek bármelyike igaz.

    Tehát, ha az előző képletben ÉS helyett VAGY-t használunk:

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

    Ekkor bárki, aki bármelyik vizsgán 50 pontnál többet ér el, a D oszlopban a "Megfelelt" jelzést kapja. Ilyen feltételekkel diákjainknak nagyobb esélyük van arra, hogy átmenjenek a záróvizsgán (Yvette különösen szerencsétlen, aki csak 1 ponttal bukott meg :)

    Tipp. Abban az esetben, ha egy többszörös IF utasítás szöveggel és egy értéket tesztel egy cellában a VAGY logikával (azaz egy cella lehet "ez" vagy "az"), akkor egy tömörebb képletet építhetünk egy tömbi konstans segítségével.

    Például, ha egy eladást "lezártnak" jelölünk, ha a B2-es cellában a "szállított" vagy a "fizetett" érték szerepel, a képlet a következő:

    =IF(OR(B2={"leszállított", "kifizetett"}), "Lezárt", "")

    További képletpéldák az Excel IF OR funkciójában találhatók.

    IF többszörös AND & OR utasításokkal

    Ha a feladat több több feltételből álló halmaz kiértékelését igényli, akkor egyszerre mindkét ÉS és VAGY függvényt kell használnia.

    Tegyük fel, hogy a mintatáblázatunkban a vizsgaeredmények ellenőrzésére a következő feltételek vonatkoznak:

    • 1. feltétel: vizsga1>50 és vizsga2>50
    • 2. feltétel: exam1>40 és exam2>60

    Ha bármelyik feltétel teljesül, a záróvizsga sikeresnek minősül.

    A képlet első látásra kissé bonyolultnak tűnik, de valójában nem az! A fenti feltételek mindegyikét csak AND-kijelentésként kell kifejezni, és a VAGY függvénybe fészkelni (mivel nem szükséges mindkét feltételnek megfelelni, bármelyik is elegendő):

    OR(ÉS(B2>50, C2>50), ÉS(B2>40, C2>60)

    Ezután használja a VAGY függvényt az IF logikai teszteléséhez, és adja meg a kívánt value_if_true és value_if_false Az eredmény a következő IF formula lesz, több ÉS / VAGY feltétellel:

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

    Az alábbi képernyőképen látható, hogy jól csináltuk a képletet:

    Természetesen nem korlátozódik arra, hogy csak két ÉS/VAGY függvényt használjon az IF képletekben. Annyit használhat, amennyit az üzleti logika megkövetel, feltéve, hogy:

    • Az Excel 2007 és újabb programokban legfeljebb 255 argumentummal rendelkezik, és az IF-képlet teljes hossza nem haladhatja meg a 8192 karaktert.
    • Az Excel 2003-ban és annál alacsonyabb verziókban legfeljebb 30 argumentum van, és az IF-képlet teljes hossza nem haladhatja meg az 1024 karaktert.

    Beágyazott IF utasítás több logikai teszt ellenőrzéséhez

    Ha egyetlen képleten belül több logikai tesztet akarunk kiértékelni, akkor több függvényt is egymásba illeszthetünk. Az ilyen függvények az úgynevezett beágyazott IF függvények Különösen hasznosnak bizonyulnak, ha a logikai tesztek eredményeitől függően különböző értékeket szeretnénk visszaadni.

    Íme egy tipikus példa: tegyük fel, hogy a diákok teljesítményét " ", " Elégséges " és " Szegény " a következő pontszámok alapján:

    • Jó: 60 vagy több (>=60)
    • Elégséges: 40 és 60 között (>40 és <60)
    • Szegény: 40 vagy kevesebb (<=40)

    Mielőtt megírja a képletet, vegye figyelembe a beágyazandó függvények sorrendjét. Az Excel a logikai teszteket a képletben megjelenő sorrendben értékeli ki. Ha egy feltétel TRUE értéket ad, a következő feltételek nem kerülnek tesztelésre, vagyis a képlet az első TRUE eredmény után megáll.

    Esetünkben a függvények a legnagyobbtól a legkisebbig vannak elrendezve:

    =IF(B2>=60, "Jó", IF(B2>40, "Elégséges", "Rossz"))

    Természetesen szükség esetén több függvényt is beágyazhatsz (a modern verziókban akár 64-et is).

    További információért lásd: Hogyan használjunk több egymásba ágyazott IF utasítást az Excelben.

    Excel IF tömbképlet több feltételekkel

    Egy másik módja annak, hogy egy Excel IF több feltétel tesztelésére is képes legyen, egy tömbképlet használata.

    A feltételek ÉS logikával történő kiértékeléséhez használja a csillagot:

    IF( feltétel1 ) * ( feltétel2 ) * ..., value_if_true, value_if_false)

    A feltételek VAGY logikával történő teszteléséhez használja a plusz jelet:

    IF( feltétel1 ) + ( feltétel2 ) + ..., value_if_true, value_if_false)

    A tömbképlet helyes befejezéséhez nyomja le együtt a Ctrl + Shift + Enter billentyűkombinációt. Az Excel 365 és az Excel 2021 programban ez a dinamikus tömbök támogatása miatt normál képletként is működik.

    Például, ha a "Pass" értéket kapjuk, ha a B2 és a C2 értéke egyaránt nagyobb, mint 50, a képlet a következő:

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

    Az én Excel 365-ömben egy normál képlet működik (ahogy a fenti képernyőképeken is látható). Az Excel 2019-ben és annál alacsonyabb verzióban ne feledje, hogy a Ctrl + Shift + Enter billentyűkombinációval tömbképletet kell készítenie.

    Több feltétel kiértékeléséhez a VAGY logikával a képlet a következő:

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

    IF használata más funkciókkal együtt

    Ez a szakasz elmagyarázza, hogyan használhatja az IF-et más Excel-funkciókkal kombinálva, és milyen előnyökkel jár ez.

    Példa 1. Ha #N/A hiba a VLOOKUP-ban

    Ha a VLOOKUP vagy más keresőfüggvény nem talál valamit, akkor #N/A hibát ad vissza. Ahhoz, hogy a táblázatok szebben nézzenek ki, nullát, üres vagy konkrét szöveget adhat vissza, ha #N/A. Ehhez használja ezt az általános képletet:

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

    Például:

    Ha #N/A, akkor 0-t ad vissza:

    Ha az E1-ben lévő keresési értéket nem találjuk, a képlet nullát ad vissza.

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

    Ha #N/A, akkor üres:

    Ha a keresési érték nem található, a képlet nem ad vissza semmit (üres karakterláncot).

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

    Ha #N/A bizonyos szöveget ad vissza:

    Ha a keresési értéket nem találja, a képlet konkrét szöveget ad vissza.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Nem található", VLOOKUP(E1, A2:B10, 2, FALSE))

    További képletpéldákért lásd: VLOOKUP az Excelben IF utasítással.

    Példa 2. IF a SUM, AVERAGE, MIN és MAX függvényekkel

    A cellák értékeinek bizonyos kritériumok alapján történő összegzéséhez az Excel a SUMIF és a SUMIFS függvényeket biztosítja.

    Bizonyos helyzetekben az üzleti logika megkövetelheti, hogy a SUM függvényt az IF logikai tesztjébe beépítsük. Például, ha a B2 és C2 értékek összegétől függően különböző szöveges címkéket szeretnénk visszaadni, a képlet a következő:

    =IF(SUM(B2:C2)>130, "Jó", IF(SUM(B2:C2)>110, "Elégséges", "Gyenge"))

    Ha az összeg nagyobb, mint 130, az eredmény "jó"; ha nagyobb, mint 110 - "kielégítő", ha 110 vagy kisebb - "rossz".

    Hasonló módon az AVERAGE függvényt is beágyazhatja az IF logikai tesztjébe, és az átlagos pontszám alapján különböző címkéket adhat vissza:

    =IF(AVERAGE(B2:C2)>65, "Jó", IF(AVERAGE(B2:C2)>55, "Elégséges", "Gyenge"))

    Feltételezve, hogy a teljes pontszám a D oszlopban van, a MAX és MIN függvények segítségével azonosíthatja a legmagasabb és a legalacsonyabb értéket:

    =IF(D2=MAX($D$2:$D$10), "Legjobb eredmény", "")

    =IF(D2=MAX($D$2:$D$10), "Legjobb eredmény", "")

    Ahhoz, hogy mindkét címke egy oszlopban legyen, a fenti függvényeket egymásba kell illeszteni:

    =IF(D2=MAX($D$2:$D$10), "Legjobb eredmény", IF(D2=MIN($D$2:$D$10), "Legrosszabb eredmény", ""))

    Hasonlóképpen használhatja az IF-et egyéni függvényeivel együtt. Például kombinálhatja a GetCellColor vagy a GetCellFontColor függvényekkel, hogy különböző eredményeket adjon vissza a cellák színe alapján.

    Ezenkívül az Excel számos függvényt biztosít az adatok feltételeken alapuló kiszámításához. Részletes képletpéldákat a következő oktatóprogramokban talál:

    • COUNTIF - a feltételnek megfelelő sejtek számolása
    • COUNTIFS - több kritériummal rendelkező cellák számolása
    • SUMIF - feltételes összegzés cellákból
    • SUMIFS - több kritériummal rendelkező cellák összegzése

    Példa 3. IF ISNUMBER, ISTEXT és ISBLANK használatával

    A szöveg, a számok és az üres cellák azonosításához a Microsoft Excel olyan speciális függvényeket biztosít, mint az ISTEXT, ISNUMBER és ISBLANK. Ezeket három egymásba ágyazott IF utasítás logikai tesztjébe helyezve egy menetben azonosíthatja az összes különböző adattípust:

    =IF(ISTEXT(A2), "Szöveg", IF(ISNUMBER(A2), "Szám", IF(ISBLANK(A2), "Üres", ""))))

    Példa 4. IF és CONCATENATE

    Az IF és néhány szöveg eredményének egy cellába történő kiadásához használja a CONCATENATE vagy CONCAT (Excel 2016 - 365-ben) és az IF funkciókat együttesen. Például:

    =CONCATENATE("Teljesítményed ", IF(B1>100, "fantasztikus!", IF(B1>50, "jól", "rossz"))))

    =CONCAT("Teljesítményed ", IF(B1>100, "fantasztikus!", IF(B1>50, "jól", "rossz"))))

    Az alábbi képernyőképet látva aligha szorul magyarázatra, hogy mit csinál a képlet:

    IF ISERROR / ISNA képlet az Excelben

    Az Excel modern változatai speciális funkciókkal rendelkeznek a hibák befogására és más számítással vagy előre meghatározott értékkel való helyettesítésére - IFERROR (Excel 2007 és újabb verziókban) és IFNA (Excel 2013 és újabb verziókban). A korábbi Excel-verziókban ehelyett az IF ISERROR és IF ISNA kombinációkat használhatja.

    A különbség az, hogy az IFERROR és az ISERROR az összes lehetséges Excel hibát kezeli, beleértve a #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! és #NULL! hibákat. Az IFNA és az ISNA kizárólag az #N/A hibákra specializálódik.

    Ha például a "divide by zero" hibát (#DIV/0!) az egyéni szöveggel szeretné helyettesíteni, a következő képletet használhatja:

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

    És ennyi a mondanivalóm az IF függvény használatáról az Excelben. Köszönöm, hogy elolvastad, és remélem, hogy jövő héten találkozunk a blogon!

    Gyakorlati munkafüzet letölthető

    Excel IF több kritérium - példák (.xlsx fájl)

    Michael Brown elkötelezett technológiai rajongó, aki szenvedélyesen egyszerűsíti a bonyolult folyamatokat szoftvereszközök segítségével. A technológiai iparban szerzett több mint egy évtizedes tapasztalatával a Microsoft Excel és az Outlook, valamint a Google Táblázatok és a Dokumentumok területén fejlesztette tudását. Michael blogja célja, hogy megossza tudását és szakértelmét másokkal, könnyen követhető tippeket és oktatóanyagokat adva a termelékenység és a hatékonyság javításához. Akár tapasztalt szakember, akár kezdő, Michael blogja értékes betekintést és gyakorlati tanácsokat kínál, amelyek segítségével a legtöbbet hozhatja ki ezekből az alapvető szoftvereszközökből.