Tartalomjegyzék
Ebben a cikkben megtanulhatja, hogyan készítsen Excel IF utasítást különböző típusú értékekhez, valamint hogyan hozzon létre több IF utasítást.
Az IF az egyik legnépszerűbb és leghasznosabb függvény az Excelben. Általában az IF utasítást egy feltétel tesztelésére használjuk, és egy értéket adunk vissza, ha a feltétel teljesül, és egy másik értéket, ha a feltétel nem teljesül.
Ebben a bemutatóban megismerkedünk az Excel IF függvény szintaxisával és gyakori használatával, majd közelebbről megvizsgáljuk a képlet példáit, amelyek remélhetőleg hasznosak lesznek a kezdők és a tapasztalt felhasználók számára egyaránt.
IF funkció Excelben
Az IF az egyik logikai függvény, amely kiértékel egy bizonyos feltételt, és egy értéket ad vissza, ha a feltétel TRUE, és egy másik értéket, ha a feltétel FALSE.
Az IF függvény szintaxisa a következő:
IF(logikai_teszt, [value_if_true], [value_if_false])Mint látható, az IF összesen 3 argumentumot fogad el, de csak az első kötelező, a másik kettő opcionális.
Logikai_teszt (kötelező) - a tesztelendő feltétel. TRUE vagy FALSE értékűként értékelhető.
Value_if_true (opcionális) - az az érték, amelyet akkor kell visszaadni, ha a logikai teszt értéke TRUE, azaz a feltétel teljesül. Ha elhagyja, a value_if_false argumentumot meg kell határozni.
Value_if_false (opcionális) - az az érték, amelyet akkor kell visszaadni, ha a logikai teszt FALSE értékű, azaz a feltétel nem teljesül. Ha elhagyja, a value_if_true argumentumot be kell állítani.
Alapvető IF-képlet az Excelben
Egy egyszerű Ha akkor utasítást az Excelben, ezt kell tennie:
- A oldalon. logikai_teszt , írjunk egy olyan kifejezést, amely TRUE vagy FALSE értéket ad vissza. Ehhez általában a logikai operátorok egyikét használjuk.
- A oldalon. value_if_true , adja meg, hogy mit adjon vissza, ha a logikai teszt értéke TRUE.
- A oldalon. value_if_false , adja meg, hogy mit adjon vissza, ha a logikai teszt FALSE értéket ad ki. Bár ez az argumentum opcionális, a váratlan eredmények elkerülése érdekében javasoljuk, hogy mindig konfiguráljuk. A részletes magyarázatért lásd az Excel IF: tudnivalók.
Példaként írjunk egy nagyon egyszerű IF képletet, amely ellenőrzi az A2 cellában lévő értéket, és "Jó" értéket ad vissza, ha az érték nagyobb, mint 80, ellenkező esetben "Rossz" értéket:
=IF(B2>80, "Jó", "Rossz")
Ez a képlet a C2-be kerül, majd a C7-ig lemásolódik:
Ha csak akkor akarsz értéket visszaadni, ha a feltétel teljesül (vagy nem teljesül), egyébként pedig semmit, akkor használj üres karakterláncot ("") az "undefined" argumentumhoz. Például:
=IF(B2>80, "Jó", "")
Ez a képlet a "Jó" értéket adja vissza, ha az A2-ben lévő érték nagyobb, mint 80, egyébként pedig egy üres cellát:
Excel If then formula: tudnivalók
Bár az IF függvény utolsó két paramétere opcionális, a képlet nem várt eredményeket adhat, ha nem ismeri a mögöttes logikát.
Ha a value_if_true nincs megadva
Ha az Excel IF képletének 2. argumentuma kimarad (azaz a logikai teszt után két egymást követő vessző van), akkor a feltétel teljesülése esetén nullát (0) kapunk, aminek a legtöbb esetben semmi értelme. Íme egy példa egy ilyen képletre:
=IF(B2>80, , "Rossz")
Ha ehelyett üres cellát szeretne visszaadni, adjon meg egy üres karakterláncot ("") a második paraméterként, például így:
=IF(B2>80, "", "Rossz")
Az alábbi képernyőkép mutatja a különbséget:
Ha a value_if_false nincs megadva
Az IF 3. paraméterének elhagyása a következő eredményt adja, ha a logikai teszt FALSE értéket ad.
Ha csak egy zárójel van a value_if_true , az IF függvény a FALSE logikai értéket adja vissza. Elég váratlan, nem igaz? Íme egy példa egy ilyen képletre:
=IF(B2>80, "Jó")
A vessző beírása a value_if_true argumentum arra kényszeríti az Excelt, hogy 0-t adjon vissza, aminek szintén nincs sok értelme:
=IF(B2>80, "Jó",)
A legésszerűbb megközelítés egy nulla hosszúságú karakterlánc ("") használata, hogy üres cellát kapjunk, ha a feltétel nem teljesül:
=IF(B2>80, "Jó", "")
Tipp: Ha logikai értéket szeretne visszaadni, ha a megadott feltétel teljesül vagy nem teljesül, adja meg a TRUE értéket a következő értékhez value_if_true és FALSE a value_if_false Ahhoz, hogy az eredmények más Excel-funkciók által felismerhető boolék legyenek, ne zárja a TRUE és a FALSE értékeket idézőjelekbe, mivel ez normál szöveges értékekké változtatja őket.
Az IF funkció használata Excelben - képletpéldák
Most, hogy már ismeri az IF függvény szintaxisát, nézzünk meg néhány példát a képletre, és tanuljuk meg, hogyan kell használni az IF függvényt. Ha akkor kijelentések valós élethelyzetekben.
Excel IF funkció számokkal
Számokra vonatkozó IF utasítás létrehozásához használjon logikai operátorokat, például:
- Egyenlő (=)
- Nem egyenlő ()
- Nagyobb, mint (>)
- Nagyobb vagy egyenlő (>=)
- Kevesebb, mint (<)
- Kisebb vagy egyenlő (<=)
Fentebb már láttál egy példát egy ilyen képletre, amely azt vizsgálja, hogy egy szám nagyobb-e egy adott számnál.
És itt van egy képlet, amely ellenőrzi, hogy egy cella tartalmaz-e egy negatív szám :
=IF(B2<0, "Érvénytelen", "")
Negatív számok (amelyek kisebbek 0-nál) esetén a képlet "Érvénytelen"; nullák és pozitív számok esetén - üres cella.
Excel IF funkció szöveggel
Általában IF utasítást írunk a szöveges értékekre az "egyenlő" vagy a "nem egyenlő" operátorral.
A következő képlet például ellenőrzi a Szállítási státusz a B2-ben, hogy meghatározzák, szükséges-e intézkedés vagy sem:
=IF(B2="szállított", "Nem", "Igen")
Lefordítva egyszerű magyarra, a képlet azt mondja: "Nem", ha B2 egyenlő a "szállított" értékkel, "Igen" egyébként.
Ugyanezt az eredményt úgy is elérhetjük, ha a "nem egyenlő" operátort használjuk, és felcseréljük a value_if_true és value_if_false értékek:
=IF(C2 "szállított", "Igen", "Nem")
Megjegyzések:
- Ha szöveges értékeket használunk az IF paramétereihez, ne feledjük, hogy mindig zárjuk be őket a kettős idézőjelek .
- Mint a legtöbb más Excel-funkció, Az IF alapértelmezés szerint nem érzékeli a nagy- és kisbetűket A fenti példában nem tesz különbséget a "kézbesített", a "kézbesített" és a "LÉTREADOTT" között.
Nagy- és kisbetű-érzékeny IF utasítás szöveges értékek esetén
Ha a nagy- és kisbetűket különböző karakterekként szeretné kezelni, használja az IF funkciót a nagy- és kisbetű-érzékeny EXACT funkcióval együtt.
Például, ha csak akkor adná vissza a "Nem"-et, ha a B2 tartalmazza a "DELIVERED" (a nagybetűs) szót, akkor ezt a képletet használná:
=IF(EXACT(B2, "DELIVERED"), "No", "Yes")
Ha a cella részleges szöveget tartalmaz
Abban a helyzetben, amikor a feltétel alapjául a részleges egyezés a pontos egyezés helyett, az első megoldás, ami eszünkbe jut, az a jokerek használata a logikai tesztben. Ez az egyszerű és nyilvánvaló megközelítés azonban nem fog működni. Sok függvény elfogadja a jokereket, de sajnos az IF nem tartozik közéjük.
A működő megoldás az IF használata az ISNUMBER és a SEARCH (nagy- és kisbetűket nem érzékelő) vagy a FIND (nagy- és kisbetűket érzékelő) kombinációjával.
Például, ha a "Nem" műveletre van szükség a "Kiszállított" és a "Kiszállításra vár" tételek esetében is, a következő képlet remekül fog működni:
=IF(ISNUMBER(SEARCH("deliv", B2)), "No", "Yes")
További információkért lásd:
- Excel IF utasítás részleges szöveges egyezéshez
- Ha a cella tartalmaz, akkor
Excel IF utasítás dátumokkal
Első pillantásra úgy tűnhet, hogy a dátumokra vonatkozó IF formulák hasonlóak a numerikus és szöveges értékekre vonatkozó IF utasításokhoz. Sajnos ez nem így van. Sok más függvénytől eltérően az IF logikai tesztekben nem ismeri fel a dátumokat, és egyszerű szöveges karakterláncokként értelmezi őket. Más szóval nem adhat meg egy dátumot "1/1/2020" vagy ">1/1/2020" formában. Ahhoz, hogy az IF függvény felismerje a dátumot, be kell csomagolnia azt a következőkbea DATEVALUE függvény.
Például így ellenőrizheti, hogy egy adott dátum nagyobb-e egy másik dátumnál:
=IF(B2>DATEVALUE("7/18/2022"), "Hamarosan", "Befejezve")
Ez a képlet kiértékeli a B oszlopban szereplő dátumokat, és a "Hamarosan" értéket adja vissza, ha a játék 2022. július 18-ra vagy későbbre van ütemezve, illetve a "Befejezve" értéket, ha korábbi dátumra.
Természetesen semmi sem akadályozza meg, hogy a céldátumot egy előre meghatározott cellába (mondjuk E2) írja be, és arra a cellára hivatkozzon. Csak ne felejtse el lezárni a cella címét a $ jellel, hogy abszolút hivatkozás legyen. Például:
=IF(B2>$E$2, "Hamarosan", "Befejezve")
Egy dátum összehasonlítása a aktuális dátum , használja a TODAY() függvényt. Például:
=IF(B2>TODAY(), "Hamarosan", "Befejezve")
Excel IF utasítás üres és nem üres helyekre
Ha valahogyan jelölni szeretné az adatokat egy vagy több üres vagy nem üres cella alapján, akkor a következőket teheti:
- Használja az IF függvényt az ISBLANK funkcióval együtt, vagy
- Használja a logikai kifejezéseket (egyenlő üres) vagy "" (nem egyenlő üres).
Az alábbi táblázat a két megközelítés közötti különbséget képletpéldákkal magyarázza.
Logikai teszt | Leírás | Képlet példa | |
Üres cellák | ="" | TRUE-ra értékelődik, ha egy cella vizuálisan üres, még akkor is, ha tartalmaz egy nulla hosszúságú karakterlánc . Ellenkező esetben FALSE értéket ad. | =IF(A1="", 0, 1) |
0-t ad vissza, ha A1 vizuálisan üres, ellenkező esetben 1-et ad vissza.
Ha A1 üres karakterláncot ("") tartalmaz, a képlet 0-t ad vissza.
TRUE-ra értékelődik, ha egy cella tartalmaz abszolút semmi - nincs formula, nincsenek szóközök, nincsenek üres karakterláncok.
Ellenkező esetben FALSE értéket ad.
0-t ad vissza, ha A1 teljesen üres, egyébként 1-et.
Ha A1 üres karakterláncot ("") tartalmaz, a képlet 1-et ad vissza.
Sejtek nulla hosszúságú karakterláncok úgy tekintik üres .
1-t ad vissza, ha A1 nem üres; 0-t egyébként.
Ha A1 üres karakterláncot tartalmaz, a képlet 0-t ad vissza.
Sejtek nulla hosszúságú karakterláncok úgy tekintik nem üres .
Ugyanúgy működik, mint a fenti képlet, de 1-et ad vissza, ha A1 üres karakterláncot tartalmaz.
És most lássuk az üres és nem üres IF utasításokat működés közben. Tegyük fel, hogy a B oszlopban csak akkor van dátum, ha egy játékot már lejátszottak. A befejezett játékok címkézéséhez használjuk az alábbi formulák egyikét:
=IF(B2="", "", "Befejezve")
=IF(ISBLANK(B2), "", "Befejezett")
=IF($B2"", "Befejezve", "")
=IF(ISBLANK($B2)=FALSE, "Befejezett", "")
Ha a vizsgált cellákban nincsenek nulla hosszúságú karakterláncok, akkor az összes képlet pontosan ugyanazt az eredményt adja vissza:
Két cella azonosságának ellenőrzése
Olyan képlet létrehozásához, amely ellenőrzi, hogy két cella egyezik-e, hasonlítsa össze a cellákat az egyenlőségjel (=) használatával az IF logikai tesztben. Például:
=IF(B2=C2, "Ugyanaz a pontszám", "")
Annak ellenőrzéséhez, hogy a két cella ugyanazt a szöveget tartalmazza-e, beleértve a betűket is, az EXACT függvény segítségével tegye az IF képletet nagy- és kisbetű-érzékennyé.
Például, az A2 és B2 jelszavak összehasonlításához, és a "Match" visszatér, ha a két karakterlánc pontosan megegyezik, "Do not match" egyébként, a képlet a következő:
=IF(EXACT(A2, B2), "Egyezik", "Nem egyezik")
IF majd formula egy másik formula futtatásához
Az előző példák mindegyikében az Excel IF utasítása értékeket adott vissza. De egy bizonyos számítást is elvégezhet, vagy egy másik képletet is végrehajthat, ha egy adott feltétel teljesül vagy nem teljesül. Ehhez egy másik függvényt vagy aritmetikai kifejezést ágyazzon be a táblázatba. value_if_true és/vagy value_if_false érvek.
Például, ha B2 nagyobb, mint 80, akkor 7%-kal szorozzuk meg, egyébként 3%-kal:
=IF(B2>80, B2*7%, B2*3%)
Több IF utasítás az Excelben
Lényegében kétféleképpen írhatunk több IF utasítást az Excelben:
- Több IF függvény egymásba ágyazása
- Az ÉS vagy VAGY függvény használata a logikai tesztben
Beágyazott IF utasítás
A beágyazott IF függvények lehetővé teszik, hogy több IF utasítást helyezzen el ugyanabban a cellában, azaz egy képleten belül több feltételt teszteljen, és a tesztek eredményétől függően különböző értékeket adjon vissza.
Tegyük fel, hogy az a célod, hogy a pontszám alapján különböző bónuszokat rendelj hozzá:
- 90 év felett - 10%
- 90 és 81 között - 7%
- 80-70 - 5%
- Kevesebb mint 70 - 3%
A feladat elvégzéséhez 3 különálló IF függvényt írunk, és egymásba ágyazzuk őket a következőképpen:
=IF(B2>90, 10%, IF(B2>=81, 7%, IF(B2>=70, 5%, 3%))))
További képletpéldákért lásd:
- Excel beágyazott IF-képlet
- Beágyazott IF függvény: példák, legjobb gyakorlatok és alternatívák
Excel IF utasítás több feltétellel
Több feltétel ÉS vagy VAGY logikával történő kiértékeléséhez ágyazza be a megfelelő függvényt a logikai tesztbe:
- AND - TRUE-t ad vissza, ha minden a feltételek teljesülnek.
- OR - TRUE-t ad vissza, ha bármilyen a feltételek egyike teljesül.
Például, ha a "megfelelt" eredményt adjuk vissza, ha a B2 és a C2 mindkét pontszáma 80-nál magasabb, a képlet a következő:
=IF(AND(B2>80, C2>80), "Pass", "Fail")
Ha bármelyik pontszám magasabb, mint 80, a képlet a következő:
=IF(OR(B2>80, C2>80), "Pass", "Fail")
További részletekért kérjük, látogasson el a következő weboldalra:
- IF AND formula Excelben
- Excel IF OR funkció képlet példákkal
Ha hiba az Excelben
Az Excel 2007-től kezdve van egy speciális, IFERROR nevű függvényünk a képletek hibaellenőrzésére. Az Excel 2013-ban és újabb verziókban az IFNA függvény is létezik a #N/A hibák kezelésére.
És mégis, lehetnek olyan körülmények, amikor az IF függvény használata az ISERROR vagy ISNA függvénnyel együtt jobb megoldás. Alapvetően az IF ISERROR az a formula, amelyet akkor kell használni, ha hiba esetén valamit vissza akarunk adni, és valami mást, ha nincs hiba. Az IFERROR függvény erre nem képes, mivel mindig a fő formula eredményét adja vissza, ha az nem hiba.
Például, ha a B oszlopban lévő összes pontszámot össze akarja hasonlítani az E2:E4 oszlopban lévő 3 legjobb pontszámmal, és "Igen" választ ad vissza, ha talál egyezést, és "Nem" választ, akkor ezt a képletet a C2 oszlopba kell beírni, majd a C7 oszlopon keresztül lefelé másolni:
=IF(ISERROR(MATCH(B2, $E$2:$E$4, 0)), "Nem", "Igen" )
További információért lásd: IF ISERROR formula az Excelben.
Reméljük, hogy példáink segítettek az Excel IF alapjainak megismerésében. Köszönöm, hogy elolvastad, és remélem, jövő héten találkozunk a blogunkon!
Gyakorló munkafüzet
Excel IF utasítás - képlet példák (.xlsx fájl)