Ve spolupráci se SEDUO jsem vytvořil několik videokurzů:
Porovnat jednu hodnotu se seznamem hodnot a vrátit výsledek pro první nalezenou shodu. pokud nenajde v seznamu, můžete vrátit výchozí (defaultní) hodnotu.
Jak získat požadovanou hodnotu, která se vrátí základě požadovaného pravidla, aneb praktické využití funkce SWITCH (v angličtině SWITCH), jednak teorie, základní použití v listu, praktické příklady, možné komplikace, tipy až po využití funkce ve VBA.
Pro přehlednost je rozdělen na kapitoly:
Pokud potřebuji vracet hodnoty na základě pravidla, lze využít i funkci SWITCH. Tato funkce vrátí jednu hodnotu ze seznamu hodnot, kdy seznam prochází a vrátí první nalezenou, pokud nic v seznamu nenalezne, tak může vrátí výchozí, pokud tato hodnota je nastavena.
SWITCH(Výraz;Hodnota1; Výsledek1; [Hodnota2]; [Výsledek2]; [Výchozí])
SWITCH(Výraz;Hodnota1; Výsledek1; [Hodnota2]; [Výsledek2]; [Výchozí])
U funkce je pro někoho nelogická pozice parametru Výchozí. Je vždy jako poslední.
Z mého pohledu je lepší používat funkce SVYHLEDAT ve spojení s IFERROR.
Na základě zadaného čísla 1 až 4, vypište roční období (1 ... jaro, 2 ... léto, 3 ... podzim, 4 ... zima).
=SWITCH(1;1;"jaro";2;"léto";3;"podzim";4;"zima")
=SWITCH(2;1;"jaro";2;"léto";3;"podzim";4;"zima")
Řešení předchozího úkolu přes pomocnou tabulku. Řešení obsahuje dvě možnosti s vyplněným argumentem výchozí a bez vyplněného argumentu výchozí.
=SWITCH(B16;$B$5;$C$5;$B$6;$C$6;$B$7;$C$7;$B$8;$C$8)
=SWITCH(B17;$B$5;$C$5;$B$6;$C$6;$B$7;$C$7;$B$8;$C$8;$C$9)
Lepší řešení s využitím funkcí SVYHLEDAT a ve spojení s IFERROR.
=SVYHLEDAT(B24;$B$5:$C$8;2;0)
=IFERROR(SVYHLEDAT(B25;$B$5:$C$8;2;0);$C$9)
Při nevhodném zadání funkce může výsledek skončit chybou.
=SWITCH(B6;1;"jaro";2;"léto";3;"podzim";4;"zima")
Využitím Switch
Dim Vysledek As String Dim ID As Integer ID = 2 Vysledek = Switch(ID = 1, "jaro", ID = 2, "léto", ID = 3, "podzim", ID = 4, "zima") MsgBox VysledekZápis přímo do listu funkce Switch
Range("C5").Formula = "=SWITCH(B5,1,""jaro"",2,""léto"",3,""podzim"",4,""zima"")"
Range("C6").FormulaLocal = "=SWITCH(B6;1;""jaro"";2;""léto"";3;""podzim"";4;""zima"")"
Další články související se statistickými funkcemi:
Soubor v přípravě.
Využíváte nějaký trik s funkci SWITCH, proč tuto funkci využívate, můžete zmínit v komentářích.
Článek byl aktualizován: 19.09.2020 10:59
Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.
Microsoft Office (Word, Excel, Google tabulky, PowerPoint) se věnuji od roku 2000 (od 2004 na této doméně) - V roce 2017 jsem od Microsoft získal prestižní ocenění MVP (zatím jsem jediný z ČR v kategorií Excel). Své vědomosti a zkušenosti dávám k dispozici i on-line ve videích pro SEDUO. Ve firmách školím a konzultuji, učím na MUNI. Tento web již tvořím přes 15 let. Zdarma je zde přes 1.000 návodu, tipů a triků, včetně přes 250 různých šablon, sešitů.
Můžete být prvními co zanechají smysluplný komentář.
Pomohl Vám návod? Sdílejte na Facebooku, G+ |
||
LinkedIn... |
Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2025 |