Dynamická pole, funkce a vzorce aplikace Excel

  • Sdílet Toto
Michael Brown

Díky revoluční aktualizaci výpočetního jádra aplikace Excel 365 se vzorce polí stávají velmi jednoduchými a srozumitelnými pro každého, nejen pro superuživatele. Výukový kurz vysvětluje koncepci nových dynamických polí aplikace Excel a ukazuje, jak mohou zefektivnit vaše pracovní listy a mnohem snadněji je nastavit.

Vzorce pole v Excelu byly vždy považovány za výsadu guruů a odborníků na vzorce. Pokud někdo řekne "Tohle lze udělat pomocí vzorce pole", okamžitá reakce mnoha uživatelů je "Aha, a neexistuje jiný způsob?".

Zavedení dynamických polí je dlouho očekávanou a velmi vítanou změnou. Díky své schopnosti pracovat s více hodnotami jednoduchým způsobem, bez jakýchkoli triků a záludností, jsou vzorce dynamických polí něčím, co pochopí každý uživatel Excelu a co rád vytvoří.

    Dynamická pole aplikace Excel

    Dynamická pole jsou pole se změnou velikosti, která automaticky počítají a vracejí hodnoty do více buněk na základě vzorce zadaného v jedné buňce.

    Během více než 30leté historie prošel Microsoft Excel mnoha změnami, ale jedna věc zůstala konstantní - jeden vzorec, jedna buňka. I u tradičních vzorců pro pole bylo nutné zadat vzorec do každé buňky, kde se měl objevit výsledek. U dynamických polí toto pravidlo již neplatí. Nyní se každý vzorec, který vrací pole hodnot, automaticky přelije do sousedních buněk.aniž byste museli stisknout klávesy Ctrl + Shift + Enter nebo provádět jiné pohyby. Jinými slovy, práce s dynamickými poli je stejně snadná jako práce s jednou buňkou.

    Dovolte mi ilustrovat tento koncept na velmi jednoduchém příkladu. Předpokládejme, že potřebujete vynásobit dvě skupiny čísel, například pro výpočet různých procent.

    V předdynamických verzích aplikace Excel by níže uvedený vzorec fungoval pouze pro první buňku, pokud byste jej nezadali do více buněk a nestiskli klávesy Ctrl + Shift + Enter, abyste z něj výslovně vytvořili vzorec pole:

    =A3:A5*B2:D2

    Nyní se podívejte, co se stane, když stejný vzorec použijete v aplikaci Excel 365. Zadáte jej pouze do jedné buňky (v našem případě B3), stisknete klávesu Enter... a celý hněv se naráz zaplní výsledky:

    Vyplnění více buněk jedním vzorcem se nazývá rozlití a vyplněný rozsah buněk se nazývá rozsah rozlití.

    Důležité je si uvědomit, že nedávná aktualizace není jen novým způsobem práce s poli v aplikaci Excel. Ve skutečnosti se jedná o převratnou změnu celého výpočetního mechanismu. Díky dynamickým polím byla do knihovny funkcí aplikace Excel přidána řada nových funkcí a ty stávající začaly pracovat rychleji a efektivněji. Nakonec by nová dynamická pole měla zcelanahradit zastaralé vzorce pole, které se zadávají pomocí klávesové zkratky Ctrl + Shift + Enter.

    Dostupnost dynamických polí aplikace Excel

    Dynamická pole byla představena na konferenci Microsoft Ignite v roce 2018 a předplatitelům Office 365 byla zpřístupněna v lednu 2020. V současné době jsou k dispozici v následujících aplikacích Předplatné služby Microsoft 365 a Excel 2021.

    V těchto verzích jsou podporována dynamická pole:

    • Excel 365 pro Windows
    • Excel 365 pro Mac
    • Excel 2021
    • Excel 2021 pro Mac
    • Excel pro iPad
    • Excel pro iPhone
    • Excel pro tablety se systémem Android
    • Excel pro telefony se systémem Android
    • Excel pro web

    Funkce dynamického pole aplikace Excel

    V rámci nových funkcí bylo v aplikaci Excel 365 zavedeno 6 nových funkcí, které nativně pracují s poli a výstupem dat do rozsahu buněk. Výstup je vždy dynamický - při jakékoliv změně ve zdrojových datech se výsledky automaticky aktualizují. Odtud název skupiny - dynamické funkce pole .

    Tyto nové funkce si snadno poradí s řadou úloh, které jsou tradičně považovány za tvrdý oříšek. Dokážou například odstranit duplicity, extrahovat a spočítat unikátní hodnoty, odfiltrovat prázdná místa, generovat náhodná celá a desetinná čísla, řadit vzestupně nebo sestupně a mnoho dalšího.

    Níže najdete stručný popis jednotlivých funkcí a odkazy na podrobné výukové programy:

    1. UNIKÁTNÍ - vybírá jedinečné položky z řady buněk.
    2. FILTR - filtruje data podle zadaných kritérií.
    3. SORT - seřadí rozsah buněk podle zadaného sloupce.
    4. SORTBY - seřadí rozsah buněk podle jiného rozsahu nebo pole.
    5. RANDARRAY - generuje pole náhodných čísel.
    6. SEQUENCE - generuje seznam sekvenčních čísel.
    7. TEXTSPLIT - rozdělí řetězce podle zadaného oddělovače napříč sloupci a/nebo řádky.
    8. TOCOL - převede pole nebo rozsah na jeden sloupec.
    9. TOROW - transformuje rozsah nebo pole na jeden řádek.
    10. WRAPCOLS - převede řádek nebo sloupec na 2D pole na základě zadaného počtu hodnot na řádek.
    11. WRAPROWS - přetvoří řádek nebo sloupec na 2D pole na základě zadaného počtu hodnot ve sloupci.
    12. TAKE - extrahuje zadaný počet sousedících řádků a/nebo sloupců ze začátku nebo konce pole.

    Kromě toho existují dvě moderní náhrady oblíbených funkcí Excelu, které sice nejsou oficiálně ve skupině, ale využívají všech výhod dynamických polí:

    XLOOKUP - je výkonnějším nástupcem VLOOKUP, HLOOKUP a LOOKUP, který umí vyhledávat ve sloupcích i řádcích a vracet více hodnot.

    XMATCH - je univerzálnější nástupce funkce MATCH, který dokáže provádět vertikální a horizontální vyhledávání a vrátit relativní pozici zadaného prvku.

    Vzorce dynamického pole aplikace Excel

    V moderních verzích aplikace Excel je chování dynamických polí hluboce integrováno a stává se nativním pro. všechny funkce , a to i ty, které původně nebyly navrženy pro práci s poli. Zjednodušeně řečeno, pro jakýkoli vzorec, který vrací více než jednu hodnotu, Excel automaticky vytvoří rozsah s možností změny velikosti, do kterého se výsledky vypíší. Díky této schopnosti mohou nyní stávající funkce kouzlit!

    Níže uvedené příklady ukazují nové vzorce dynamických polí v akci a vliv dynamických polí na stávající funkce.

    Příklad 1. Nová funkce dynamického pole

    Tento příklad ukazuje, o kolik rychlejší a jednodušší řešení lze provést pomocí dynamických funkcí pole aplikace Excel.

    Pro získání seznamu jedinečných hodnot ze sloupce se tradičně používá složitý vzorec CSE, jako je tento. V dynamickém Excelu stačí vzorec UNIQUE v základní podobě:

    =UNIKÁTNÍ(B2:B10)

    Vzorec zadáte do libovolné prázdné buňky a stisknete klávesu Enter. Excel okamžitě vybere všechny různé hodnoty v seznamu a vypíše je do rozsahu buněk počínaje buňkou, do které jste vzorec zadali (v našem případě D2). Při změně zdrojových dat se výsledky automaticky přepočítají a aktualizují.

    Příklad 2. Kombinace několika dynamických funkcí pole v jednom vzorci

    Pokud není možné splnit úkol pomocí jedné funkce, zřetězte jich několik dohromady! Chcete-li například filtrovat data na základě podmínky a seřadit výsledky podle abecedy, obklopte funkci SORT funkcí FILTER takto:

    =SORT(FILTER(A2:C13, B2:B13=F1, "Žádné výsledky"))

    Kde A2:C13 jsou zdrojová data, B2:B13 jsou hodnoty ke kontrole a F1 je kritérium.

    Příklad 3. Použití nových dynamických funkcí pole spolu s existujícími funkcemi

    Vzhledem k tomu, že nový výpočetní engine implementovaný v aplikaci Excel 365 dokáže snadno měnit běžné vzorce na pole, nic vám nebrání kombinovat nové a staré funkce dohromady.

    Chcete-li například spočítat, kolik unikátních hodnot je v určitém rozsahu, vnořte funkci dynamického pole UNIQUE do staré dobré funkce COUNTA:

    =COUNTA(UNIQUE(B2:B10))

    Příklad 4. Existující funkce podporují dynamická pole

    Pokud funkci TRIM zadáte rozsah buněk ve starší verzi, například Excel 2016 nebo Excel 2019, vrátí funkce jeden výsledek pro první buňku:

    =TRIM(A2:A6)

    V dynamickém Excelu stejný vzorec zpracuje všechny buňky a vrátí více výsledků, jak je uvedeno níže:

    Příklad 5. Vzorec VLOOKUP pro vrácení více hodnot

    Jak každý ví, funkce VLOOKUP je navržena tak, aby vracela jednu hodnotu na základě zadaného indexu sloupce. V aplikaci Excel 365 však můžete zadat pole čísel sloupců a vrátit tak shody z několika sloupců:

    =VLOOKUP(F1, A2:C6, {1,2,3}, FALSE)

    Příklad 6. Snadný vzorec TRANSPOSE

    V dřívějších verzích aplikace Excel nedávala syntaxe funkce TRANSPOSE žádný prostor pro chyby. Chcete-li otočit data v listu, museli jste spočítat původní sloupce a řádky, vybrat stejný počet prázdných buněk, ale změnit orientaci (v obrovských listech to byla ohromující operace!), zadat vzorec TRANSPOSE ve vybraném rozsahu a stisknout klávesy Ctrl + Shift + Enter, abyste jej správně dokončili. Uff!

    V dynamickém Excelu stačí zadat vzorec do nejlevější buňky výstupního rozsahu a stisknout Enter:

    =TRANSPOSE(A1:B6)

    Hotovo!

    Rozsah rozlití - jeden vzorec, více buněk

    Na stránkách rozsah úniku je rozsah buněk, který obsahuje hodnoty vrácené dynamickým vzorcem pole.

    Pokud je vybrána jakákoli buňka v rozsahu rozsypu, zobrazí se modrý rámeček, který ukazuje, že vše uvnitř je vypočteno podle vzorce v levé horní buňce. Pokud vzorec v první buňce odstraníte, všechny výsledky zmizí.

    Rozsah rozsypání je opravdu skvělá věc, která uživatelům Excelu značně usnadňuje život. Dříve jsme u vzorců pole CSE museli odhadovat, do kolika buněk je máme zkopírovat. Nyní stačí vzorec zadat do první buňky a o zbytek se postará Excel.

    Poznámka: Pokud některá jiná data blokují rozsah vysypání, dojde k chybě #SPILL. Jakmile jsou překážející data odstraněna, chyba zmizí.

    Další informace naleznete v části Rozsah úniků v aplikaci Excel.

    Odkaz na rozsah úniku (symbol #)

    Chcete-li odkázat na rozsah rozsypání, vložte za adresu levé horní buňky v rozsahu hash tag nebo symbol libry (#).

    Chcete-li například zjistit, kolik náhodných čísel je vygenerováno vzorcem RANDARRAY v A2, zadejte odkaz na rozsah rozlití do funkce COUNTA:

    =COUNTA(A2#)

    Chcete-li sečíst hodnoty v rozsahu rozlití, použijte:

    =SUMA(A2#)

    Tipy:

    • Chcete-li se rychle odkázat na rozsah rozlití, jednoduše vyberte všechny buňky uvnitř modrého rámečku pomocí myši a aplikace Excel vytvoří rozlití ref.
    • Na rozdíl od běžného odkazu na rozsah je odkaz na rozlitý rozsah dynamický a automaticky reaguje na změnu velikosti rozsahu.
    • Další podrobnosti naleznete v části Obsluha rozsahu úniku.

      Implicitní křížení a znak @

      V dynamickém poli Excelu došlo v jazyce vzorců ještě k jedné významné změně - zavedení znaku @, tzv. operátor implicitního průsečíku .

      V aplikaci Microsoft Excel, implicitní průsečík je chování vzorce, které redukuje mnoho hodnot na jednu hodnotu. Ve starém Excelu mohla buňka obsahovat pouze jednu hodnotu, takže to bylo výchozí chování a nebyl k němu potřeba žádný speciální operátor.

      V novém Excelu jsou všechny vzorce ve výchozím nastavení považovány za vzorce typu pole. Operátor implicitního průniku slouží k tomu, aby se chování pole zabránilo, pokud si to v konkrétním vzorci nepřejete. Jinými slovy, pokud si přejete, aby vzorec vracel pouze jednu hodnotu, vložte před název funkce znak @ a bude se chovat jako vzorec bez pole v tradičním Excelu.

      Chcete-li vidět, jak to funguje v praxi, podívejte se na obrázek níže.

      V buňce C2 je dynamický vzorec pole, který přelévá výsledky do mnoha buněk:

      =UNIQUE(A2:A9)

      V E2 je funkce uvozena znakem @, který vyvolává implicitní průnik. Výsledkem je vrácení pouze první jedinečné hodnoty:

      =@UNIQUE(A2:A9)

      Další informace naleznete v části Implicitní křížení v aplikaci Excel.

      Výhody dynamických polí aplikace Excel

      Dynamická pole jsou bezpochyby jedním z nejlepších vylepšení Excelu za poslední roky. Jako každá nová funkce mají silné a slabé stránky. Naštěstí pro nás jsou silné stránky nových vzorců dynamických polí Excelu ohromující!

      Jednoduché a výkonnější

      Dynamická pole umožňují vytvářet výkonnější vzorce mnohem jednodušším způsobem. Zde je několik příkladů:

      • Extrakce jedinečných hodnot: tradiční vzorce
      • Počítání jedinečných a odlišných hodnot: tradiční vzorce
      • Řazení sloupců podle abecedy: tradiční vzorce

      Nativní pro všechny vzorce

      V dynamickém Excelu se nemusíte zabývat tím, které funkce podporují pole a které ne. Pokud vzorec může vrátit více hodnot, bude tak činit ve výchozím nastavení. To platí i pro aritmetické operace a starší funkce, jak je ukázáno v tomto příkladu.

      Vnořené dynamické funkce pole

      Pro řešení složitějších úloh můžete kombinovat nové funkce dynamického pole aplikace Excel nebo je používat společně se starými funkcemi, jak je uvedeno zde a zde.

      Relativní a absolutní reference jsou méně důležité

      Díky přístupu "jeden vzorec, mnoho hodnot" není třeba zamykat rozsahy pomocí znaku $, protože technicky vzato je vzorec pouze v jedné buňce. Většinou tedy nezáleží na tom, zda použijete absolutní, relativní nebo smíšené odkazy na buňky (což bylo vždy zdrojem zmatku pro nezkušené uživatele) - vzorec dynamického pole bude tak jako tak poskytovat správné výsledky!

      Omezení dynamických polí

      Nová dynamická pole jsou skvělá, ale stejně jako u každé nové funkce i zde existuje několik upozornění a opatření, která byste měli mít na paměti.

      Výsledky nelze seřadit obvyklým způsobem

      Rozsah rozsypu vrácený dynamickým vzorcem pole nelze seřadit pomocí funkce Seřadit aplikace Excel. Při jakémkoli takovém pokusu se zobrazí hlášení " Část pole nelze změnit " chyba. Chcete-li seřadit výsledky od nejmenšího po největší nebo naopak, obalte aktuální vzorec funkcí SORT. Takto lze například filtrovat a řadit najednou.

      Nelze odstranit žádnou hodnotu v rozsahu rozlití

      Žádnou z hodnot v rozsahu výplně nelze odstranit ze stejného důvodu: nelze měnit část pole. Toto chování je očekávané a logické. Takto fungují i tradiční vzorce CSE pro pole.

      Nejsou podporovány v tabulkách aplikace Excel

      Tato funkce (nebo chyba?) je zcela neočekávaná. Vzorce dynamických polí nefungují z tabulek Excelu, pouze v rámci běžných rozsahů. Pokud se pokusíte převést rozsah rozlití na tabulku, Excel tak učiní. Místo výsledků se však zobrazí pouze chyba #SPILL!.

      Nepracujte s aplikací Excel Power Query

      Výsledky vzorců dynamických polí nelze načíst do Power Query. Pokud se například pokusíte sloučit dva nebo více rozsahů rozlití dohromady pomocí Power Query, nebude to fungovat.

      Dynamická pole vs. tradiční vzorce polí CSE

      Po zavedení dynamických polí můžeme hovořit o dvou typech Excelu:

      1. Dynamický Excel který plně podporuje dynamická pole, funkce a vzorce. V současné době je to pouze Excel 365 a Excel 2021.
      2. Dědictví aplikace Excel , neboli tradiční nebo předdynamický Excel, kde jsou podporovány pouze vzorce pole Ctrl + Shift + Enter. Jedná se o Excel 2019, Excel 2016, Excel 2013 a starší verze.

      Je samozřejmé, že dynamická pole jsou ve všech ohledech lepší než vzorce polí CSE. Ačkoli jsou tradiční vzorce polí z důvodu kompatibility zachovány, od nynějška se doporučuje používat nové.

      Zde jsou nejzásadnější rozdíly:

      • Dynamický vzorec pole se zadává do jedné buňky a dokončí se běžným stiskem klávesy Enter. Chcete-li dokončit staromódní vzorec pole, musíte stisknout klávesy Ctrl + Shift + Enter .
      • Nové vzorce pole se automaticky rozlijí do mnoha buněk. Vzorce CSE je třeba zkopírovat do rozsahu buněk, aby se vrátilo více výsledků.
      • Výstup vzorců dynamického pole automaticky mění velikost podle toho, jak se mění data ve zdrojovém rozsahu. Vzorce CSE zkracují výstup, pokud je návratová oblast příliš malá, a vracejí chyby v buňkách navíc, pokud je návratová oblast příliš velká.
      • Vzorec dynamického pole lze snadno upravit v jedné buňce. Chcete-li upravit vzorec CSE, musíte vybrat a upravit celý rozsah.
      • V rozsahu vzorců CSE není možné mazat a vkládat řádky - nejprve je nutné odstranit všechny existující vzorce. U dynamických polí není vkládání nebo mazání řádků problém.

      Zpětná kompatibilita: dynamická pole ve starším Excelu

      Při otevření sešitu obsahujícího vzorec dynamického pole ve starém Excelu se automaticky převede na běžný vzorec pole uzavřený do {kudrnatých závorek}. Při opětovném otevření listu v novém Excelu budou kudrnaté závorky odstraněny.

      Ve starším Excelu dostanou nové funkce dynamického pole a odkazy na rozsypané rozsahy předponu _xlfn, která označuje, že tato funkce není podporována. Znak odkazu na rozsypaný rozsah (#) je nahrazen funkcí ANCHORARRAY.

      Například zde je uveden vzorec UNIQUE, který se zobrazí v položce Excel 2013 :

      Většina vzorců dynamických polí (ale ne všechny!) bude zobrazovat své výsledky ve starším Excelu, dokud v nich neprovedete nějaké změny. Úprava vzorce jej okamžitě přeruší a zobrazí jednu nebo více chybových hodnot #NAME?.

      Nefunkčnost vzorců dynamického pole aplikace Excel

      V závislosti na funkci může dojít k různým chybám, pokud použijete nesprávnou syntaxi nebo neplatné argumenty. Níže jsou uvedeny 3 nejčastější chyby, na které můžete narazit při použití jakéhokoli vzorce dynamického pole.

      #SPILL! chyba

      Pokud dynamické pole vrací více výsledků, ale něco blokuje rozsah vysypání, dojde k chybě #SPILL!.

      Chcete-li chybu opravit, stačí vymazat nebo odstranit všechny buňky v rozsahu rozlití, které nejsou zcela prázdné. Chcete-li rychle odhalit všechny buňky, které překážejí, klikněte na indikátor chyby a poté klikněte na tlačítko Vyberte překážející buňky .

      Kromě neprázdného rozsahu rozsypání může být tato chyba způsobena několika dalšími příčinami. Další informace naleznete v části:

      • Chyba aplikace Excel #SPILL - příčiny a opravy
      • Jak opravit chybu #SPILL! pomocí VLOOKUP, INDEX MATCH, SUMIF

      #REF! chyba

      Vzhledem k omezené podpoře externích odkazů mezi sešity vyžadují dynamická pole, aby byly oba soubory otevřené. Pokud je zdrojový sešit zavřený, zobrazí se chyba #REF!.

      #NAME?

      Pokud se pokusíte použít funkci dynamického pole ve starší verzi aplikace Excel, dojde k chybě #NAME? Nezapomeňte, že nové funkce jsou k dispozici pouze v aplikacích Excel 365 a Excel 2021.

      Pokud se tato chyba objeví v podporovaných verzích Excelu, překontrolujte název funkce v problematické buňce. Je pravděpodobné, že je chybně zadán :)

      To je návod, jak používat dynamická pole v Excelu. Doufejme, že se vám tato fantastická nová funkce bude líbit! Každopádně vám děkuji za přečtení a doufám, že se uvidíme na našem blogu příští týden!

    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.