Funkce IFS v Excelu: Konec nepřehledných KDYŽ

V dnešním videu se podíváme na funkci IFS v Excelu, která vám výrazně zjednoduší práci s vícenásobnými podmínkami a pomůže zbavit se nepřehledných vnořených funkcí KDYŽ. Ukážeme si, proč je IFS v praxi tak užitečná, kdy ji používat a na co si dát naopak pozor. Vše si vysvětlíme na konkrétních příkladech a navíc si ukážeme, jak ji kombinovat i s logickými funkcemi A a NEBO.

Excelový soubor ke stažení:

Funkce IFS, která je dostupná ve verzích Excelu od 2019, má v podstatě jen dva parametry, logický test a podmínku a tyto parametry můžeme v párech kupit za sebou. Výhodou této funkce je hlavně to, že na rozdíl od vícenásobných vnořených podmínek KDYŽ nemusíme tyto funkce KDYŽ neustále opakovat, funkce IFS toto nahrazuje a ve funkci uvádíme pouze jednotlivé logické testy a výsledky těchto testů.  

V prvním příkladu máme tabulku s velikostmi produktů. Naším úkolem je do nového sloupce uvést velikosti místo písmen celým názvem. To znamená, že písmeno S reprezentuje velikost Small, písmeno M velikost Medium a písmena XL Extra large atd. Příklad vyřešíme pomocí funkce IFS.

Do první buňky napíšeme funkci IFS, kde se nejprve určuje logický test. Logický test je klasická podmínka. Potřebujeme nejprve ověřit, zda se velikost rovná písmenu S. Takže ověříme, že sehodnota v buňce B2 rovná velikosti XS a platí zde stejné pravidlo jako ve všech excelových funkcích, že textová hodnota se uvádí do uvozovek. A pokud se velikost bude rovnat „XS“, tak chceme vrátit označení „Extra small“. Následuje středník a budeme pokračovat druhým logickým testem, kde budeme ověřovat, že se velikost rovná písmenu „S“ a pokud ano, tak chceme vrátit označení „Small“. A takto bychom ve funkci pokračovali, dokud neověříme všechny podmínky. 

A jak by pro srovnání vypadalo řešení s vícenásobnou podmínkou KDYŽ? Ukážeme si to vedle ve sloupci. Postup by byl velmi podobný, akorát bychom museli před každou podmínku napsat funkci KDYŽ, to je právě výhoda funkce IFS, jelikož si šetříme neustálé opakování funkce KDYŽ, a ve funkci IFS jen kupíme logické testy a podmínky za sebou.

V dalším příkladu máme studenty a jejich známky, naším úkolem je přiřadit ke známkám hodnocení podle písmen. Začneme postupně. Jako první podmínku ověříme, zda je známka vyšší nebo rovna hodnotě 90, pokud ano, tak se má vrátit hodnocení „A“. Pokud je hodnota známky vyšší nebo rovna 75, tak se má vrátit hodnocení „B“ a pokud je známky alespoň 60, tak se má vrátit hodnocení „C“. Když funkci takto potvrdíme, tak se na některých řádcích vrátí chyby.

Důvodem chyby je to, že jsme neošetřili všechny podmínky, které mohou nastat a ve funkci IFS nemáme parametr ne, tedy co má nastat, pokud podmínky splněné nebudou. Momentálně nemáme ošetřeno, co se má stát, pokud má student známku nižší než 60 bodů. Excel vyhodnocuje podmínky ve funkci postupně, stejně jako ve funkci KDYŽ. Když tedy funkce narazí na hodnotu, pro kterou nemáme ošetřený logický test, tak vrátí chybu. Chybu lze v tomto příkladu ošetřit dvěma způsoby, můžeme se k funkci vrátit a jednoduše ošetřit i poslední podmínku. Takže bychom dopsali poslední podmínku, kde bychom stanovili, že pro známky menší než 60 se má vrátit hodnocení D.  

Nebo můžeme použít parametr pravda, který ve funkci IFS nahrazuje parametr, co se má stát, pokud předchozí podmínky nejsou splněné. Parametr pravda se použije jako poslední parametr a funguje jako náhrada, která říká, co se má stát, když předchozí logické testy nebudou splněné.  

V posledním příkladu potřebujeme ověřit dvě podmínky, které musí platit zároveň. Ve funkci IFS lze používat i logické funkce A a NEBO. Potřebujeme určit, kteří zaměstnanci dostanou bonus, a to na základě následujících podmínek. Pokud je skóre vyšší nebo rovno 80 a docházka je vyšší nebo rovno 90, tak zaměstnanci náleží bonus 20 %. Pokud je skóre alespoň 70 a docházka alespoň 80, tak náleží zaměstnanci bonus 10 %. Ostatní zaměstnanci nemají na bonus nárok. 

Začneme s ověřením první podmínky a jelikož musíme ověřit dvě podmínky, které musí platit zároveň, tak použijeme logickou funkci A. V této funkci ověříme, zda je skóre vyšší nebo rovno hodnotě 80 a jako druhou podmínku ověříme, zda je docházka vyšší nebo rovna hodnotě 90. A pokud ano, tak zaměstnanci náleží bonus ve výši 20 %. Musíme ověřit i druhou podmínku pro bonus 10 %. Takže druhá logická funkce A, kde ověříme, zda je skóre vyšší nebo rovno hodnotě 70 a zda je docházka vyšší nebo rovna hodnotě 80. Pokud ano, tak zaměstnanci náleží bonus ve výši 10 %. A u ostatních zaměstnanců musí být nula, takže využijeme parametr pravda a pro ostatní stanovíme bonus 0 %. 

MOHLO BY VÁS ZAJÍMAT

Jedna odpověď

Napsat komentář: senior Zrušit odpověď na komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *