Přeskočit na obsah

IfsExcel

enIFS

Funkce testuje jednu nebo více podmínek po sobě a vrátí výsledek odpovídající první splněné podmínce.

=IFS(Logický_test1;Podmínka1;[Logický_test2];[Podmínka2];…;[Logický_testN];[PodmínkaN])

Logický_test1 (povinný) – Logický test, který má být vyhodnocen jako pravdivý nebo nepravdivý.

Podmínka1 (povinný) – Hodnota, která má být vrácena, pokud je podmínka splněna.

Logický_test2…Logický_testN (vollitelný) – Další logické testy, které mají být vyhodnoceny, pokud první logický test není splněn.

Podmínka2…PodmínkaN (volitlený) – Hodnoty, které mají být vráceny v případě, kdy je daný logický test splněn.

Funkce se používá pro rozhodovací logiku např. pro vyhodnocení známek, kontrolu chyb, kategorizaci apod. Nahrazuje zároveň složité vnořené funkce Když, kdy jsou jednotlivé logické testy v dalších argumentech. Pokud není ani jeden logický test splněn, funkce vrátí chybu ve formátu #NENÍ_K_DISPOZICI, což je rozdíl od funkce Když, která má možnost vrátit určitou hodnotu v případě nesplnění podmínky. Musí být tedy ošetřeny všechny možnosti, pokud nemá být vrácena chyba.

V následujícím příkladu bude vrácen text „Prospěl“ pokud se jedná o hodnotu vyšší nebo rovno 60, jinak bude vrácen text „Neprospěl“:

Pokud nejsou ošetřeny všechny možnosti, bude vrácena chyba:

Do výstupu je možné vložit i vnořené funkce nebo výpočty:

Použití s ostatními funkcemi

Sekce “Použití s ostatními funkcemi”

Pokud není možné ošetřit všechny možnosti z důvodu příliš mnoho vstupních parametrů, je možné funkci kombinovat s funkcí IfNA, kdy pokud nebude podmínka ošetřena, je možné vrátit určitou hodnotu nebo vnořenou další funkci.

=IFNA(IFS(A2=“Boty“;1;A2=“Kalhoty“;2);“Nenalezeno“)

Pokud má být splněno více podmínek zároveň v jednom z argumentů „Logický_test“, je možné funkci kombinovat s funkcí A. Např. má být zjištěno, zdali je ve sloupci „B“ text Praha a zároveň je hodnota v sloupci „A“ vyšší než 1000. Pokud ano, má být vrácen 10% bonus dané hodnoty. Pokud alespoň jedna podmínka splněna není, má být vyzkoušena alespoň podmínka, zdali je hodnota vyšší než 1000. Pokud ano, bude vrácen bonus ve výši 5%, jinak bude vrácena chyba. Podobně lze využít i funkce Nebo, kdy je potřebné, aby alespoň jedna z více podmínek platila.

=IFS(A(A2>1000;B2=“Praha“);A2*0,1;A2>1000;A2*0,05)

Funkce může být kombinována téměř s jakoukoliv funkcí v Excelu, ať už v logickém testu nebo v podmínce. Pokud např. je průměr zjištěný pomocí funkce Průměr vyšší než 50, má být vrácena suma pomocí funkce Suma z oblasti hodnot.

=IFS(PRŮMĚR(A2:A6)>50;SUMA(A2:A6))

© 2026 Excelland