Čo by ste mali vedieť
- Funkcia IF sa používa na vykonanie logického testu, t. j. či je niečo pravdivé alebo nie.
- Syntax a argumenty funkcie IF sú =IF(logický_test, hodnota_ak_pravda, [hodnota_ak_nepravda]).
- Napríklad =IF(A2>A3, "Väčší", "Menší").
Tento článok vysvetľuje, ako používať funkciu IF na vykonanie logického testu všetkých verzií Excelu vrátane Excelu 2019 a Microsoft 365. Uvádzame niekoľko príkladov.
Čo je funkcia IF?
Funkcia IF v Exceli sa používa na vykonanie logického testu. Vzorec používajúci túto funkciu sa tiež nazýva príkaz IF alebo príkaz if/then.
Všetky vzorce, ktoré používajú túto funkciu, môžu mať jeden z dvoch výsledkov. Spôsob, akým to funguje, ako uvidíme v príkladoch nižšie, je taký, že vzorec je nastavený na testovanie, či je niečo pravdivé. Ak je to pravda, stane sa jedna vec, ale ak nie, stane sa niečo iné.
Funkcia IF je jednou z niekoľkých logických funkcií, ktoré môžete použiť v Exceli. Medzi ďalšie patria AND, IFERROR, IFS, NOT a OR.
Syntax a argumenty funkcie IF
Každý vzorec, ktorý používa funkciu IF, má niekoľko častí:
=IF(logical_test, value_if_true, [value_if_false])
- logical_test: Stav, ktorý testujete. Je to povinné.
- value_if_true: Čo by sa malo stať, ak je logical_test pravdivý. Je to povinné.
- value_if_false: Čo by sa malo stať, ak je logical_test nepravda. Je to voliteľné.
Napísanie príkazu IF v Exceli je jednoduché, ak ho budete čítať trochu inak: ak je prvá časť pravdivá, urobte toto. Ak je prvá časť nepravdivá, urobte namiesto toho túto inú vec.
Majte na pamäti tieto pravidlá:
- Excel vráti FALSE, ak je parameter logical_test nepravdivý a hodnota value_if_false je vynechaná.
- Ak chcete vrátiť text ako value_if_true alebo value_if_false, musí byť uzavretý v úvodzovkách, s výnimkou slov TRUE a FALSE.
- Funkcia IF nerozlišuje veľké a malé písmená.
- Excel 2010 a novší umožňuje existenciu až 64 príkazov IF v rámci toho istého vzorca. Staršie verzie Excelu sú obmedzené na sedem.
IF príklady funkcií
Tu je niekoľko rôznych spôsobov, ako môžete použiť vzorce IF v Exceli:
Napíšte text, ak je vyhlásenie pravdivé
=IF(A2>A3; "Väčší", "Menší")
Toto je skutočne základný príklad príkazu IF v Exceli. Test má zistiť, či je A2 väčší ako A3. Ak áno, napíšte Väčšie, inak napíšte Menšie.
Počítajte, ak je výrok pravdivý
=IF(A2>A3, A2-A3)
Tento výrok IF je napísaný trochu inak. Namiesto toho, aby výsledok value_if_true bolo slovo, odpočítava jednu hodnotu od druhej. Ak je teda A2 v skutočnosti väčší ako A3, výsledkom bude rozdiel. Ak to nie je pravda, pretože sme vynechali časť value_if_false, Excel vráti FALSE.
Otestujte si výrok s matematikou
=IF(A2/A3=5, A2/A3, "")
Ďalším spôsobom, ako napísať príkaz IF, je vykonať výpočet v sekcii logical_test. Podmienka IF je tu A2/A3=5. Ak je to pravda, potom urobíme výpočet A2/A3. Ak sa nerovná 5, chceme, aby výsledok nebol žiadny, preto použijeme dvojité úvodzovky.
Otestujte, či je dátum dnes
=IF(A2=DNES(), "Toto je dnes", "")
V rámci príkazu IF možno použiť ďalšie funkcie Excelu. V tomto príklade používame funkciu DNES na kontrolu, či je A2 dnešný dátum. Ak je, vzorec píše This is today, inak sa nepíše nič.
Používanie vzorca AND With IF
=IF(E2<=DNES(), "Teraz", "Čoskoro")
=IF(AND(F2="Teraz", D2>=(B2-C2)), "Áno", "Nie")
Tento príklad funkcie IF je trochu zložitejší. Myšlienkou je zistiť, či položka, za ktorú dlhujeme peniaze, je po splatnosti, a ak áno, vidíme, či je táto suma v našom rozpočte alebo nie, aby sme ju mohli splatiť. Ak sú obe tieto tvrdenia pravdivé, v stĺpci G vidíme, či je čas zaplatiť.
IF(E2<=DNES(), "Teraz", "Čoskoro") je v stĺpci Naliehavosť. Porovnaním dátumu splatnosti s dnešným dátumom nám povie, či je položka po splatnosti alebo či je splatná dnes. Ak je dátum splatnosti dnes alebo v minulosti, v stĺpci F sa zapíše Now, inak napíšeme Čoskoro.
Druhý príkaz IF je stále štruktúrovaný ako príkaz IF, aj keď sa v ňom používa AND. Tučná časť je tam, kde sedí funkcia AND, a keďže je v rámci prvej skupiny čiarok, používame to ako logický_test:
=AK(AND(F2="Teraz", D2>=(B2-C2)), "Áno", "Nie")
Tu je napísané inak, aby sa ukázalo, že je to rovnaké ako pri iných IF vyhláseniach:
=AK(otestujte túto funkciu A, napíšte Áno, ak je to pravda, alebo napíšte Nieak je nepravda)
V rámci funkcie AND sú dva príkazy IF:
- F2="Now" je súčasťou vzorcov v stĺpci G. Kontroluje, či je Now v F2.
- D2>=(B2-C2) má dve časti: najprv vykoná výpočet B2-C2, aby sme zistili, koľko nám zostáva zaplatiť za položku, a potom skontroluje dostupný rozpočet v D2, aby zistil, či máme peniaze na jeho splatenie.
Ak teda teraz dlhujeme peniaze a máme prostriedky na ich splatenie, bolo nám povedané, že Áno, je čas danú položku splatiť.
Príklady vnorených príkazov IF
Vnorené príkazy IF sa nazývajú, keď je vo vzorci zahrnutý viac ako jeden príkaz IF. Nastavenie je takmer identické, ale namiesto uzavretia zátvoriek na konci prvej množiny vložíme čiarku a napíšeme ďalšie vyhlásenie.
Dva výroky IF v jednom vzorci
=IF(B2="F", "Trieda A", IF(B2="M", "Trieda B"))
Tento prvý príklad sa používa na kategorizáciu študentov podľa ich pohlavia, kde ženy majú pridelenú triedu A a muži triedu B. Vzorec skontroluje F a M v B2 a potom zapíše buď triedu A alebo triedu B v závislosti od výroku to je pravda.
Počet zátvoriek, ktoré potrebujete na konci vzorca s vnorenými funkciami IF, je rovnaký počet zápisov IF. V našom príklade je IF napísané dvakrát, takže na konci potrebujeme dve zátvorky.
Tri IF výroky v jednom vzorci
=AK(A2=DNES(), "Toto je dnes", AK(A2DNES(), "Budúci dátum")))
Tu je príklad vzorca s viacerými príkazmi IF. Je to identické s príkladom TODAY vyššie, ale s ešte jedným logickým testom:
- Prvá sada skontroluje, či je A2 dnešný dátum a vráti sa Dnes, ak áno.
- Druhý testuje, či je dnešný deň väčší ako A2, aby určil, či je A2 starší dátum, a ak je, vráti starý dátum.
- Nakoniec je tu test, aby sme zistili, či je dnešný dátum menší ako dátum v A2 a vzorec vráti Budúci dátum, ak áno.
Kopírovať cenu, ak sú vyhlásenia nepravdivé
=IF(C2="Účet", "", IF(C2="Jedlo", "", B2))
V tomto poslednom príklade vnoreného vzorca IF musíme rýchlo identifikovať celkovú sumu všetkých nákupov, ktoré nespadajú do určitej kategórie. Sčítavame všetky nepotrebné nákupy a s dlhým zoznamom je to najlepší spôsob, ako to urobiť. Zistili sme, že každý popis položky, ktorý hovorí Bill alebo Food, je dôležitý, takže cena v B2 musí byť uvedená pre všetky ostatné položky.
Toto sa deje:
- C2="Bill", "": Ak C2 hovorí Bill, nechajte políčko prázdne.
- C2="Jedlo", "": Ak C2 hovorí Jedlo, ponechajte pole prázdne.
- B2: Ak je niektorý z týchto výrokov nepravdivý, napíšte, čo je v B2.
Tento vzorec nám ponecháva zoznam cien, ktoré potom môžeme sčítať pomocou funkcie SUM, aby sme rýchlo zhodnotili, koľko peňazí sme minuli na položky, ktoré sme nepotrebovali.
Jednoduchší spôsob písania vnorených výkazov IF
Keď do vzorca zabudovávate viac a viac, môže sa rýchlo stať neovládateľným a neskôr ťažko upraviteľným. Jedným zo spôsobov, ako uľahčiť prácu s vnorenými príkazmi IF, je vložiť zalomenie riadku za každý príkaz, napríklad:
=
IF(A2=DNES(), "Toto je dnes",
IF(A2<DNES(), "Starý dátum",
IF(A2IF(A2>TODAY(), "Budúci dátum")))
Ak to chcete urobiť v Exceli, musíme upraviť v riadku vzorcov:
- Vyberte riadok vzorcov v hornej časti Excelu.
- Umiestnite myš pod textový priestor, kým sa kurzor nezmení na obojstrannú šípku, a potom kliknite na pole a potiahnite ho nadol, čím získate viac pracovného priestoru.
- Umiestnite kurzor za znamienko rovnosti a stlačte Alt+Enter (Windows) alebo Ctrl+Option+Enter (Mac). Toto umiestni zvyšok vzorca na nový riadok.
-
Zopakujte krok 3 pred každým príkazom IF, aby sa každá inštancia umiestnila na vlastný riadok.