IFS

Funkce IFS vyhodnocuje zadané výrazy a vrátí hodnotu odpovídající první podmínce, která má logickou hodnotu TRUE.

IFS(logický-výraz; pokud-pravda; logický-výraz…; pokud-pravda…)

logický-výraz: Jakýkoli logický výraz. Argument logický-výraz může obsahovat jakýkoli výraz, jehož výsledkem je logická hodnota. Pokud je výraz hodnocen jako číslo, bude 0 vyhodnocena jako FALSE a ostatní čísla jako TRUE.

pokud-pravda: Hodnota, která bude vrácena, pokud má logický-výraz hodnotu TRUE. Argument pokud-pravda může obsahovat hodnotu libovolného typu. Je-li argument pokud-pravda vynechán (je zadána čárka bez hodnoty) a logický-výraz má hodnotu TRUE, funkce IFS vrátí hodnotu 0.

logický-výraz…: Nepovinný logický výraz, který má být vyhodnocen, pokud má logický-výraz hodnotu FALSE. Argument logický-výraz může obsahovat jakýkoli výraz, jehož výsledkem je logická hodnota. Pokud je výraz hodnocen jako číslo, bude 0 vyhodnocena jako FALSE a ostatní čísla jako TRUE.

pokud-pravda…: Hodnota, která bude vrácena, pokud má logický-výraz… hodnotu TRUE. Argument pokud-pravda může obsahovat hodnotu libovolného typu. Je-li argument pokud-pravda vynechán (je zadán středník bez hodnoty) a logický-výraz má hodnotu TRUE, funkce IFS vrátí hodnotu 0.

Poznámky

  • Pokud mají všechny výrazy hodnotu FALSE, funkce vrátí chybu.

  • Jako poslední argument logický-výraz… ve vzorci můžete zadat hodnotu „TRUE“ následovanou výchozí hodnotou argumentu pokud-pravda…, která určí výsledek v případě, že všechny předchozí výrazy (logický-výraz i všechny výskyty argumentu logický-výraz…) mají hodnotu FALSE.

Použití funkce IFS k více porovnáním

Následující tabulka zobrazuje seznam se známkami studentů.

A

B

C

1

Student

Výsledek

Hodnocení

2

1

4

Znamenitý

3

2

2

Začátečník

4

3

3

Zdatný

5

4

Neúplné

6

5

3,2

Zdatný+

7

6

3,2

Nováček

Následující tabulka vrací hodnocení související s bodovým hodnocením ve výše uvedené tabulce pomocí více argumentů logického-výrazu….

Editor vzorců zobrazující vzorec =IFS(B2=4;"Znamenitý";B2=3;"Zdatný";B2=2;"Začátečník";B2=1;"Nováček")

V tomto vzorci byly použity následující argumenty:

  • logický-výraz: B2=4, který ověří, zda hodnota B2 se rovná 4.

  • pokud-pravda: Rovná-li se B2 hodnotě 4, vrátí se řetězec "Znamenitý".

  • logický-výraz…: "B2=3", který ověří, zda se hodnota B2 rovná hodnotě 3.

  • pokud-pravda…: Rovná-li se B2 hodnotě 3, vrátí se řetězec "Zdatný".

  • logický-výraz…: "B2=2", který ověří, zda se hodnota B2 rovná hodnotě 2.

  • pokud-pravda…: Rovná-li se B2 hodnotě 2, vrátí se řetězec "Začátečník".

  • logický-výraz…: "B2=1", který ověří, zda se hodnota B2 rovná hodnotě 1.

  • pokud-pravda…: Rovná-li se B2 hodnotě 1, vrátí se řetězec "Nováček".

Chcete-li výše uvedený vzorec použít pro ostatní buňky tabulky, změňte B2 v každém if-výrazu na jinou buňku obsahující hodnocení.

Použití funkce TRUE pro logický-výraz…

Někdy se žádný z výrazů nevyhodnotí jako TRUE. Místo nastavení vrácení chyby však můžete v konečném logického-výrazu nastavit vrácený řetězec. Ve výše uvedené tabulce nemá 4. student žádné hodnocení, takže předchozí vzorec by pro tohoto studenta vrátil chybu. Tento student možná chyběl a musí ještě dokončit úkol, takže místo ponechání chyby můžete přidat další logický-výraz, který označí chybějící výsledky jako "Neúplné":

Editor vzorců zobrazující vzorec =IFS(B5=4;"Znamenitý";B5=3;"Zdatný";B5=2;"Začátečník+";B5=1;"Nováček";TRUE;"Neúplné")

V tomto příkladu je odkaz na buňku změněn tak, aby odpovídal buňce s výsledky pro 4. studenta. Všechny argumenty jsou však stejné jako výše a na závěr je přidán ještě jeden logický-výraz:

  • logický-výraz…: TRUE, který je přidán jako poslední výraz.

  • pokud-pravda…: Pokud žádný z ostatních argumentů není vyhodnocen jako TRUE, vrátí se řetězec „Neúplné“.

Složitější porovnání

V některých případech můžete pracovat se složitějšími výrazy, ve kterých je třeba použít kombinaci porovnávacích operátorů. Například výše uvedená škála používá celá čísla, ale jiný student (Student 6) mohl třeba dosáhnout ohodnocení 3,2. Pro zohlednění studentů, jejichž výsledky se pohybují mezi čtyřmi hlavními hodnoceními (B6 může být 3,2, tedy hodnocení Studenta 5), můžete použít níže uvedený vzorec:

Editor vzorců zobrazující vzorec =IFS(B6=4;"Znamenitý"; B6>3;"Zdatný+";B6=3;"Zdatný";B6>2;"Začátečník+";B6=2;"Začátečník";B6>1;"Nováček+";B5=1;"Nováček";TRUE;"Neúplné")

V tomto příkladu jsou mezi hodnocení Zdatný, Začátečník a Nováček přidány další argumenty logického-výrazu….

  • logický-výraz…: "B6>3", který ověří, zda je hodnota B6 vyšší než 3.

  • pokud-pravda…: Je-li hodnota B2 vyšší než 3, vrátí se řetězec "Zdatný+".

  • logický-výraz…: "B6>2", který ověří, zda je hodnota B6 vyšší než 2.

  • pokud-pravda…: Je-li hodnota B2 vyšší než 2, vrátí se řetězec "Začátečník+".

  • logický-výraz…: "B6>1", který ověří, zda je hodnota B6 vyšší než 1.

  • pokud-pravda…: Je-li hodnota B2 vyšší než 1, vrátí se řetězec "Nováček+".

To funguje, protože funkce IFS hledá první pravdivý výraz. Pokud studentův výsledek není 4, funkce IFS ověří, zda je výsledek vyšší než 3; výsledek 5 studenta by odpovídal hodnocení Zdatný+. Dalším příkladem může být student s výsledkem 2,5, jehož hodnocení by bylo Začátečník+, protože jeho výsledek není 4, větší než 3 nebo 3, ale je větší než 2.

Použití funkce IFS v kombinaci s jinými funkcemi

Funkci IFS lze použít v kombinaci s jinými funkcemi. Tato funkce, například pomocí funkce MOD, určí, zda je rok v buňce A2 (v tomto příkladu A2=2020) přestupný:

Editor vzorců zobrazující vzorec =IFS(MOD($A2;4)≠0 ;FALSE;MOD($A2;100)≠0;TRUE;MOD($A2;400)≠0;FALSE; TRUE; TRUE)

Chcete-li porovnat, zda nejsou dvě hodnoty shodné, použijte operátor porovnání <>.

Další příklady

Výraz =IFS(A2>91;"1";A2>82;"2";A2>73;"3";A2>64;"4";TRUE;"5") vrátí hodnocení známkou 1 pro číslo větší než 91, hodnocení známkou 2 pro číslo větší než 82, ale menší než 92 atd. až po hodnoty menší než 65, pro které vrátí hodnocení známkou 5.

Výraz =IFS(A2>91;"1";A2>82;"2";A2>73;"3";A2>64;"D",A2<>0,"Pokusil/a se",TRUE,"Neprospěl") vrátí hodnocení známkou 1 pro číslo větší než 91, hodnocení známkou 2 pro číslo větší než 82, ale menší než 92 atd. až po hodnoty menší než 65, ale nikoli rovné 0, pro které vrátí hodnocení "Pokusil/a se". Pro hodnotu 0 vzorec vrátí hodnocení "Neprospěl".

Předpokládejme, že buňka A2 obsahuje řetězec „Psí život“.

Předpokládejme, že A1 = COUNTMATCHES(A2; REGEX("\w+")).

Vzorec =IFS(A1 = 0; "Žádná slova"; A1 = 1; "Jedno slovo"; A1 = 2; "Dvě slova"; A1 > 2; "Více slov") vrátí text „Dvě slova“.

Viz takéANDIFNOTOR
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Užitečné?
Limit počtu znaků: 250
Limit maximálního počtu znaků je 250.
Děkujeme za zpětnou vazbu.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.