Funkce CHOOSE v aplikaci Excel s příklady vzorců

  • Sdílet Toto
Michael Brown

Výukový program vysvětluje syntaxi a základní použití funkce CHOOSE a uvádí několik netriviálních příkladů použití vzorce CHOOSE v aplikaci Excel.

Funkce CHOOSE je jednou z těch funkcí Excelu, které možná samy o sobě nevypadají užitečně, ale v kombinaci s dalšími funkcemi poskytují řadu úžasných výhod. Na nejzákladnější úrovni používáte funkci CHOOSE k získání hodnoty ze seznamu zadáním pozice této hodnoty. Dále v tomto návodu najdete několik pokročilých způsobů použití, které určitě stojí za prozkoumání.

    Funkce Excel CHOOSE - syntaxe a základní použití

    Funkce CHOOSE v aplikaci Excel je určena k vrácení hodnoty ze seznamu na základě zadané pozice.

    Funkce je k dispozici v aplikacích Excel 365, Excel 2019, Excel 2016, Excel 2013, Excel 2010 a Excel 2007.

    Syntaxe funkce CHOOSE je následující:

    CHOOSE(index_num, value1, [value2], ...)

    Kde:

    Index_num (povinné) - pozice hodnoty, která se má vrátit. Může to být libovolné číslo v rozsahu 1 až 254, odkaz na buňku nebo jiný vzorec.

    Hodnota1, hodnota2, ... - seznam až 254 hodnot, z nichž lze vybírat. Hodnota1 je povinná, ostatní hodnoty jsou nepovinné. Mohou to být čísla, textové hodnoty, odkazy na buňky, vzorce nebo definované názvy.

    Zde je příklad vzorce CHOOSE v nejjednodušší podobě:

    =CHOOSE(3, "Mike", "Sally", "Amy", "Neal")

    Vzorec vrací hodnotu "Amy", protože index_num je 3 a "Amy" je třetí hodnota v seznamu:

    Funkce Excel CHOOSE - 3 věci, které je třeba si zapamatovat!

    Funkce CHOOSE je velmi jednoduchá a při její implementaci do pracovních listů se sotva setkáte s nějakými potížemi. Pokud je výsledek vrácený vzorcem CHOOSE neočekávaný nebo neodpovídá vašemu očekávání, může to být z následujících důvodů:

    1. Počet hodnot, z nichž lze vybírat, je omezen na 254.
    2. Pokud index_num je menší než 1 nebo větší než počet hodnot v seznamu, je vrácena chyba #VALUE!.
    3. Pokud index_num je zlomek, je zkrácen na nejmenší celé číslo.

    Jak používat funkci CHOOSE v aplikaci Excel - příklady vzorců

    Následující příklady ukazují, jak může funkce CHOOSE rozšířit možnosti jiných funkcí aplikace Excel a poskytnout alternativní řešení některých běžných úloh, a to i těch, které mnozí považují za neproveditelné.

    Excel CHOOSE místo vnořených IF

    Jednou z nejčastějších úloh v Excelu je vracení různých hodnot na základě zadané podmínky. Ve většině případů to lze provést pomocí klasického vnořeného příkazu IF. Funkce CHOOSE však může být rychlou a snadno pochopitelnou alternativou.

    Příklad 1. Vrácení různých hodnot na základě podmínky

    Předpokládejme, že máte sloupec výsledků žáků a chcete je označit na základě následujících podmínek:

    Výsledek Skóre
    Špatný 0 - 50
    Vyhovující 51 - 100
    Dobrý 101 - 150
    Vynikající přes 151

    Jedním ze způsobů, jak toho dosáhnout, je vnořit několik vzorců IF do sebe:

    =IF(B2>=151, "Vynikající", IF(B2>=101, "Dobrý", IF(B2>=51, "Uspokojivý", "Špatný")))

    Dalším způsobem je vybrat štítek odpovídající podmínce:

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent")

    Jak tento vzorec funguje:

    V index_num vyhodnotíte každou podmínku a vrátíte TRUE, pokud je podmínka splněna, jinak FALSE. Například hodnota v buňce B2 splňuje první tři podmínky, takže dostaneme tento mezivýsledek:

    =CHOOSE(TRUE + TRUE + TRUE + FALSE, "Poor", "Satisfactory", "Good", "Excellent")

    Vzhledem k tomu, že ve většině vzorců Excelu se TRUE rovná 1 a FALSE 0, náš vzorec projde touto transformací:

    =CHOOSE(1 + 1 + 1 + 0, "Poor", "Satisfactory", "Good", "Excellent")

    Po provedení operace sčítání máme:

    =CHOOSE(3, "Poor", "Satisfactory", "Good", "Excellent")

    Jako výsledek se vrátí 3. hodnota v seznamu, což je "Good".

    Tipy:

    • Aby byl vzorec flexibilnější, můžete například místo pevně zadaných štítků použít odkazy na buňky:

      =CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), $E$1, $E$2, $E$3, $E$4)

    • Pokud žádná z vašich podmínek není TRUE, bude index_num argument bude nastaven na hodnotu 0 a vzorec vrátí chybu #VALUE! Chcete-li se tomu vyhnout, jednoduše zabalte funkci CHOOSE do funkce IFERROR takto:

      =IFERROR(CHOOSE((B2>0) + (B2>=51) + (B2>=101) + (B2>=151), "Poor", "Satisfactory", "Good", "Excellent"), "")

    Příklad 2. Proveďte různé výpočty na základě podmínek

    Podobným způsobem můžete použít funkci Excel CHOOSE k provedení jednoho výpočtu v řadě možných výpočtů/vzorců, aniž byste museli vnořovat více příkazů IF do sebe.

    Jako příklad uveďme výpočet provize každého prodejce v závislosti na jeho prodeji:

    Komise Prodej
    5% 0 až 50 dolarů
    7% 51 až 100 dolarů
    10% více než 101 dolarů

    S částkou prodeje v položce B2 má vzorec následující tvar:

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*5%, B2*7%, B2*10%)

    Místo toho, abyste procenta ve vzorci zadávali natvrdo, můžete odkázat na odpovídající buňku v referenční tabulce, pokud nějaká existuje. Jen nezapomeňte odkazy opravit pomocí znaku $.

    =CHOOSE((B2>0) + (B2>=51) + (B2>=101), B2*$E$2, B2*$E$3, B2*$E$4)

    Vzorec Excel CHOOSE pro generování náhodných dat

    Jak pravděpodobně víte, Microsoft Excel má speciální funkci pro generování náhodných celých čísel mezi dolním a horním číslem, které zadáte - funkci RANDBETWEEN. Vložte ji do okna. index_num argumentu CHOOSE a vzorec vygeneruje téměř libovolná náhodná data.

    Tento vzorec může například vytvořit seznam náhodných výsledků zkoušek:

    =CHOOSE(RANDBETWEEN(1,4), "Poor", "Satisfactory", "Good", "Excellent")

    Logika vzorce je zřejmá: RANDBETWEEN generuje náhodná čísla od 1 do 4 a CHOOSE vrací odpovídající hodnotu z předem definovaného seznamu čtyř hodnot.

    Poznámka: RANDBETWEEN je nestálá funkce a přepočítává se při každé změně, kterou provedete v pracovním listu. V důsledku toho se změní i seznam náhodných hodnot. Abyste tomu zabránili, můžete vzorce nahradit jejich hodnotami pomocí příkazu Vložit speciální funkce.

    VYBRAT vzorec pro provedení levého Vlookupu

    Pokud jste někdy v Excelu prováděli vertikální vyhledávání, víte, že funkce VLOOKUP umí vyhledávat pouze v nejlevějším sloupci. V situacích, kdy potřebujete vrátit hodnotu nalevo od vyhledávacího sloupce, můžete použít buď kombinaci INDEX / MATCH, nebo obelstít funkci VLOOKUP tím, že do ní vnoříte funkci CHOOSE:

    Předpokládejme, že máte seznam výsledků ve sloupci A, jména studentů ve sloupci B a chcete získat výsledek konkrétního studenta. Protože sloupec pro návrat je vlevo od sloupce pro vyhledávání, běžný vzorec Vlookup vrátí chybu #N/A:

    Chcete-li to napravit, použijte funkci CHOOSE, která prohodí pozice sloupců a řekne aplikaci Excel, že sloupec 1 je B a sloupec 2 je A:

    =CHOOSE({1,2}, B2:B5, A2:A5)

    Vzhledem k tomu, že v příkazu {1,2} zadáváme pole index_num argument, funkce CHOOSE přijímá rozsahy ve tvaru hodnota argumenty (normálně ne).

    Nyní vložte výše uvedený vzorec do table_array argument VLOOKUP:

    =VLOOKUP(E1,CHOOSE({1,2}, B2:B5, A2:A5),2,FALSE)

    A voilà - vyhledávání vlevo proběhne bez problémů!

    VYBRAT vzorec pro vrácení následující pracovní den

    Pokud si nejste jisti, zda máte zítra jít do práce, nebo můžete zůstat doma a užít si zasloužený víkend, funkce Excel CHOOSE dokáže zjistit, kdy je další pracovní den.

    Za předpokladu, že vaše pracovní dny jsou od pondělí do pátku, je vzorec následující:

    =DNES()+VYBRAT(DEN V TÝDNU(DNES()),1,1,1,1,1,1,3,2)

    Na první pohled složité, ale při bližším pohledu je logika vzorce snadno pochopitelná:

    WEEKDAY(TODAY()) vrací pořadové číslo odpovídající dnešnímu datu v rozsahu od 1 (neděle) do 7 (sobota). Toto číslo přechází do pole. index_num argumentu našeho vzorce CHOOSE.

    Hodnota1 - hodnota7 (1,1,1,1,1,1,3,2) určují, kolik dní se má přičíst k aktuálnímu datu. Pokud je dnes neděle - čtvrtek (index_číslo 1 - 5), přičtete 1, abyste vrátili další den. Pokud je dnes pátek (index_číslo 6), přičtete 3, abyste vrátili další pondělí. Pokud je dnes sobota (index_číslo 7), přičtete 2, abyste vrátili opět další pondělí. Jo, je to tak jednoduché :)

    VYBRAT vzorec pro vrácení vlastního názvu dne/měsíce z data

    V situacích, kdy chcete získat název dne ve standardním formátu, jako je celý název (pondělí, úterý atd.) nebo zkrácený název (po, út atd.), můžete použít funkci TEXT, jak je vysvětleno v tomto příkladu: Získat den v týdnu z data v aplikaci Excel.

    Chcete-li vrátit název dne v týdnu nebo měsíce ve vlastním formátu, použijte funkci CHOOSE následujícím způsobem.

    Chcete-li získat den v týdnu:

    =CHOOSE(WEEKDAY(A2),"Su","Mo","Tu","We","Th","Fr","Sa")

    Chcete-li získat měsíc:

    =CHOOSE(MONTH(A2), "Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

    Kde A2 je buňka obsahující původní datum.

    Doufám, že vám tento návod přinesl několik nápadů, jak můžete funkci CHOOSE v Excelu použít k vylepšení svých datových modelů. Děkuji vám za přečtení a doufám, že se příští týden uvidíme na našem blogu!

    Stáhnout cvičebnici

    Příklady funkce Excel CHOOSE

    Michael Brown je oddaný technologický nadšenec s vášní pro zjednodušování složitých procesů pomocí softwarových nástrojů. S více než desetiletými zkušenostmi v technologickém průmyslu zdokonalil své dovednosti v aplikacích Microsoft Excel a Outlook a také v Tabulkách a Dokumentech Google. Michaelův blog je věnován sdílení jeho znalostí a odborných znalostí s ostatními a poskytuje snadno pochopitelné tipy a návody pro zlepšení produktivity a efektivity. Ať už jste zkušený profesionál nebo začátečník, Michaelův blog nabízí cenné postřehy a praktické rady, jak tyto základní softwarové nástroje co nejlépe využít.