Pokud používáte Excel na webu denně, jistě provádíte úkoly, které opakujete znovu a znovu: čištění dat, formátování tabulek, vytváření grafů nebo aktualizaci sestav. Díky skriptům Office pro Excel na webu můžete veškerou tuto práci automatizovat a spouštět ji jediným kliknutím nebo dokonce podle plánu, aniž byste museli být u počítače.
V této praktické příručce se dozvíte, jak fungují skripty Office, jaké nástroje Excel obsahuje pro jejich vytváření, jak je sdílet a propojovat s Power Automate a také řadu osvědčených postupů a příkladů kódu TypeScript, které zajistí, že vaše automatizace budou stabilní, bezpečné a snadno se budou spravovat. Cílem je, abyste odtud odešli s jasnou představou o plném potenciálu skriptů Excelu na webu a o tom, jak je aplikovat ve vlastních sešitech.
Co jsou skripty Office v Excelu pro web?
Skripty Office v Excelu představují způsob, jak automatizovat opakující se procesy v tabulkách pomocí dvou klíčových komponent: záznamníku akcí a editoru kódu založeného na TypeScriptu. Můžete ručně zaznamenávat, co děláte, a převést to do opakovaně použitelného skriptu nebo si napsat vlastní kód od nuly.
Filozofie je jednoduchá: vše, co v Excelu systematicky opakujete (čištění sloupců, používání formátů, vkládání vzorců, příprava sestav), lze zabalit do skriptu a spustit kdykoli, a to jak ve stejném sešitu, tak i v dalších, které mají stejnou datovou strukturu.
Hlavní výhodou je, že tyto skripty jsou uloženy v cloudu, takže je můžete sdílet s ostatními členy vaší organizace a všichni budou mít přístup ke stejné automatizaci. Navíc díky integraci s Power Automate se skripty Office stávají perfektním propojením mezi Excelem a ostatními aplikacemi Microsoft 365.
Kdy má smysl používat skripty Office?
Skripty Office jsou obzvláště užitečné, když provádíte stejnou posloupnost kroků v jednom nebo více sešitech aplikace Excel. Například každé ráno otevřete soubor .csv z účetního softwaru, odstraníte nepotřebné sloupce, převedete data do tabulky, přidáte vzorce a vytvoříte kontingenční tabulku na novém listu pro denní zprávu.
Místo ručního opakování tohoto rituálu každý den jej můžete spustit pouze jednou, když je aktivní Záznamník akcí . Excel zaznamená všechny operace a vygeneruje skript, který můžete znovu použít, kdykoli obdržíte nový soubor .csv ve stejném formátu. To šetří čas, snižuje chyby a umožňuje komukoli ve vašem týmu provést stejný proces, aniž by musel znát všechny podrobnosti.
Dalším typickým scénářem je práce s více sešity, které sdílejí společnou strukturu: měsíční sestavy, šablony sledování, řídicí panely atd. Místo ruční úpravy každého souboru vytvoříte skript, který práci provede za vás ve všech kompatibilních sešitech. A pokud chcete jít ještě o krok dál, můžete tyto skripty propojit s postupy Power Automate, aby se spouštěly automaticky, například každou noc nebo když je přijat e-mail s konkrétní přílohou.
Záznamník akcí: automatizace bez znalosti programování
Záznamník akcí je nástroj, který vám umožňuje převést kliknutí a změny v Excelu do spustitelného kódu . Funguje jako jakési „moderní makro“ založené na TypeScriptu, ale bez nutnosti napsat jediný řádek kódu, pokud nechcete.
Když aktivujete záznamník, Excel zaznamenává operace, které provádíte s buňkami, oblastmi, tabulkami, grafy a dalšími objekty : úpravy, změny formátování, vytváření tabulek atd. To vše se automaticky převede do kódu a po zastavení záznamu se uloží jako skript Office.
Tento skript pak můžete replikovat do jiných sešitů nebo listů , pokud prvky, na které odkazuje (například konkrétní tabulka), existují se stejným názvem nebo strukturou. Je to nejrychlejší způsob, jak začít se skripty Office, protože slouží také jako „škola“ pro zobrazení toho, jak je každá akce kódována v TypeScriptu.
Pokud v jakémkoli okamžiku potřebujete kód pro konkrétní operaci a nejste si jisti, jak ho napsat, můžete použít záznamník: aktivujte ho, proveďte akci v Excelu a poté zkopírujte vygenerovaný kód , vložte ho a upravte do svého hlavního skriptu.

Editor kódu: posouvá vaše skripty na další úroveň
Editor kódu je místo, kde si můžete prohlížet, upravovat a vytvářet skripty Office založené na TypeScriptu . Automatizace zde přestává být jen opakováním toho, co jste udělali ručně, a stává se malým programem s logikou, podmínkami a řídicími strukturami.
V editoru můžete otevírat dříve nahrané skripty, upravovat kód vygenerovaný nástrojem Action Recorder a přidávat vylepšení, jako jsou podmíněné výrazy, smyčky, pomocné funkce a validace dat. To vám umožní je doladit podle specifik vašich knih a učinit je mnohem odolnějšími vůči změnám.
Mezi funkce dostupné pouze prostřednictvím kódu patří podmíněné struktury (if/else), smyčky a opakovaně použitelné funkce . Ty vám umožňují jít nad rámec pouhého opakování kroků a činit rozhodnutí za běhu: přeskakovat operace, pokud chybí tabulka, mazat listy pouze tehdy, pokud existují, nebo zpracovávat data v blocích, když jsou příliš velká.
Oficiální tutoriály o skriptování v Office jsou velmi užitečné pro pochopení logiky editoru. Po zvládnutí základních příkladů a úpravě nahraných skriptů se doporučuje hlouběji se ponořit do základů rozhraní ExcelScript API a samotného prostředí editoru, abyste pochopili, co každá část kódu dělá a jak Excel organizuje objekty sešitu.
Sdílení skriptů Office s vaší organizací
Jednou z velkých výhod skriptů Office je, že nejsou určeny jen pro vás . Můžete je sdílet s ostatními lidmi ve vaší organizaci a nechat je pracovat se stejným automatizovaným pracovním postupem, aniž by museli umět programovat nebo dokonce přistupovat k editoru.
Když uložíte a sdílíte skript ve sdíleném sešitu, každý s oprávněními k tomuto souboru si ho může prohlédnout a spustit na kartě Automatizovat. Tím se centralizuje obchodní logika do jednoho skriptu a zabrání se všem ve vytváření vlastních způsobů zpracování dat.
Dále je možné do samotného sešitu přidat tlačítka, která spouštějí specifické skripty , což umožňuje libovolnému uživateli spustit automatizaci jednoduchým kliknutím na pásu s nástroji. To je obzvláště užitečné, když chcete, aby skripty mohli používat i lidé bez technických znalostí, aniž by museli procházet nabídky nebo panely.
Naplánovat automatické spouštění skriptů
Kromě spouštění na vyžádání můžete také nakonfigurovat skripty aplikace Excel tak, aby se spouštěly automaticky v pravidelných intervalech . Tento mechanismus se spoléhá na Power Automate, který bude zodpovědný za spuštění skriptu, i když je sešit zavřený.
Chcete-li naplánovat skript, otevřete Editor kódu, vyberte skript, který chcete automatizovat, a přejděte do sekce Plánování skriptů v panelu . Odtud se přihlaste do Excelu pomocí Power Automate, vyberte frekvenci (například denně, týdně nebo každých několik minut) a nakonec kliknutím na možnost vytvoření toku.
Po konfiguraci bude Power Automate spouštět skript na pozadí podle zadaného plánu. To funguje perfektně se scénáři jako „aktualizovat tuto sestavu každý den v 7:00“ nebo „synchronizovat tato data pokaždé, když jsou nahrána do určité složky“.
Integrace skriptů Office s Power Automate
Power Automate je služba od společnosti Microsoft, která je navržena pro vytváření automatizovaných pracovních postupů mezi různými aplikacemi a službami . Skripty Office zde zapadají jako další součást, která umožňuje aplikaci Excel fungovat jako zdroj i cíl informací v rámci většího procesu.
Mezi nejzajímavější možnosti patří možnost spouštět excelové skripty jako součást naplánovaného pracovního postupu , v reakci na událost (například doručení e-mailu s přílohou) nebo po akci v jiné aplikaci Microsoft 365. Představte si, že do sdílené schránky dorazí e-mail se souborem .csv; Power Automate si ho může stáhnout, otevřít v Excelu, spustit skript, který ho vyčistí a zpracuje, a výsledek uložit kamkoli potřebujete.
Pokud se chcete s touto integrací seznámit, návody na spouštění skriptů Office pomocí Power Automate vysvětlují, jak propojit konkrétní skript z editoru s tokem a jak předávat parametry, shromažďovat výsledky a ošetřovat chyby v samotném toku.
Vytváření skriptů Office: tři způsoby práce
Excel pro web v současné době nabízí několik způsobů, jak vytvářet nové skripty Office přizpůsobené různým uživatelským profilům . Nemusíte být vývojář, abyste mohli začít, ale pokud jím jste, budete moci platformu využít naplno.
První možností je použít Záznamník akcí k zaznamenání vašich obvyklých kroků . Je to ideální, když již máte dobře definovaný proces, který přesně opakujete. V tomto případě nepotřebujete žádné znalosti programování: jednoduše postupujte podle svých obvyklých kroků s aktivním záznamníkem a nechte Excel vygenerovat skript za vás.
Druhou možností je použít editor kódu přímo k psaní nebo vylepšování skriptů TypeScript . Toto je doporučený přístup, pokud chcete vytvářet složitější automatizace, optimalizovat skripty generované rekordérem nebo začlenit pokročilou logiku, kterou rozhraní Excelu přímo nezpřístupňuje.
Konečně je tu možnost vygenerovat počáteční skript s pomocí umělé inteligence . Tato funkce, která je stále v náhledové verzi a není dostupná všem uživatelům, vám umožňuje specifikovat, co chcete dělat, a obdržet návrh kódu, který pak můžete zkontrolovat, ladit a přizpůsobit svým specifickým potřebám. Je to dobrý výchozí bod, pokud víte, čeho chcete dosáhnout, ale nejste si jisti, jak to převést do TypeScriptu.
Jak spustit a spravovat skript Office
Spuštění nově vytvořeného nebo sdíleného skriptu je docela jednoduché: stačí přejít na kartu Automatizace v Excelu na webu . Zde se zobrazí Galerie skriptů Office se skripty, se kterými jste naposledy pracovali.
Chcete-li jeden spustit, jednoduše přejděte do nabídky Automatizace > Zobrazit skripty, vyberte skript a klikněte na tlačítko Spustit v editoru kódu. Během jeho běhu Excel zobrazí malé oznámení, které po dokončení skriptu zmizí.
V panelu editoru najdete také kontextovou nabídku přidruženou ke každému skriptu, která je přístupná pomocí tří teček (...). V této nabídce můžete skripty, které již nepoužíváte, odstranit, přejmenovat je, integrovat je s Power Automate a vytvořit tak nový pracovní postup nebo přidat na pás karet tlačítko, které je spouští přímo z galerie.
Požadavky a běžné problémy s kartou Automatizace
V některých případech se karta Automatizace nemusí v Excelu zobrazit nebo nemusí být k dispozici skripty Office . Než se rozhodnete předpokládat, že je něco skutečně „poškozené“, je třeba zkontrolovat několik věcí.
Nejprve je třeba zkontrolovat, zda vaše licence Microsoft 365 zahrnuje podporu pro skripty Office . Pokud je vaše předplatné nezahrnuje, karta se nezobrazí a nebudete moci tuto funkci používat. Je také důležité, abyste měli při používání Excelu na webu v prohlížeči povolené soubory cookie třetích stran.
Na druhou stranu, váš správce Microsoft 365 mohl zakázat skripty Office v centru pro správu nebo použít zásady skupiny, které je blokují (v prostředí Windows). V některých případech budete také potřebovat mít na počítači nainstalovaný WebView2.
Nakonec zkontrolujte, zda k klientovi vaší organizace nepřistupujete jako host nebo externí uživatel , protože v takovém případě mohou být některé funkce, například skripty Office, omezeny.
Chyby skriptů a protokolování problémů
I když skript při prvním nahrání funguje správně, může selhat při přehrávání v jiných sešitech nebo v mírně odlišných situacích . Mezi typické příčiny patří přejmenování listů, tabulky, které již neexistují, nebo rozdíly ve struktuře dat.
Když se stane některá z těchto věcí, Excel zobrazí chyby v podokně Editor kódu . Pomocí tlačítka Zobrazit protokoly můžete zobrazit podrobnější zprávy v dolní části podokna, které vám pomohou přesně pochopit, co se pokazilo a v jakém bodě kódu.
Tyto protokoly jsou nezbytné pro ladění skriptů, protože označují problematický řádek a popis problému . S těmito informacemi můžete upravovat názvy objektů, přidávat předběžné kontroly nebo upravovat logický tok skriptu, aby byl robustnější.
Funkce, které skripty Office zatím nepodporují
Platforma Office Scripts se neustále vyvíjí, ale stále existují funkce Excelu, které nelze zaznamenat ani automatizovat pomocí dostupného záznamníku nebo API.
Pokud se pokusíte použít Záznamník akcí s nepodporovanou funkcí, zobrazí se v panelu protokolu poznámka , že akci nebylo možné zaznamenat. Tyto akce nebudou zahrnuty do skriptu, a proto budou při přehrávání vynechány.
Vzhledem k této situaci je nejlepší strategií hledat ekvivalentní alternativu, která je podporována , nebo pravidelně konzultovat technickou dokumentaci k Office Scripts, kde je seznam dostupných funkcí aktualizován.
Nejlepší postupy pro zajištění spolehlivosti skriptů
Aby se vaše skripty Office chovaly předvídatelně a snadno selhávaly, je vhodné dodržovat řadu vzorů a osvědčených postupů . Tyto pokyny jsou navrženy tak, aby minimalizovaly běžné chyby při automatizaci pracovních postupů v Excelu.
První klíčovou myšlenkou je použít Záznamník akcí jako nástroj pro učení . Kdykoli nevíte, jak převést funkci nebo vlastnost aplikace Excel do kódu, nahrajte si ji a pozorujte výsledek. Poté můžete tento úryvek kódu zkopírovat a vložit do většího skriptu a podle potřeby jej upravit.
Dalším velmi důležitým doporučením je vždy ověřit, zda objekty, které budete používat, v sešitu skutečně existují . Mnoho skriptů závisí na listu s konkrétním názvem nebo na konkrétní tabulce; pokud je někdo přejmenuje nebo smaže, skript selže uprostřed běhu.
Typický vzorec zahrnuje načtení listu nebo tabulky podle názvu a ověření výsledku před pokračováním . Například list „Index“ můžete získat pomocí `workbook.getWorksheet('Index')` a zkontrolovat, zda vrácená proměnná není null. Pokud list existuje, pokračujete v práci s jeho rozsahem; pokud ne, zaznamenáte do konzole jasnou zprávu, aby uživatel věděl, co chybí.
Volitelný operátor `?` v jazyce TypeScript můžete také použít k volání metod, pouze pokud je objekt definován . Například `workbook.getWorksheet('Index')?.delete();` zajišťuje, že operace `delete()` se provede, pouze pokud list existuje, čímž se zabrání zbytečným chybám.
Před provedením jakýchkoli změn ověřte data a stav knihy.
Než skript začne zapisovat, mazat nebo transformovat data, je vhodné ověřit, zda je sešit v očekávaném stavu . To zahrnuje přítomnost všech listů, tabulek, názvů a dalších prvků, na kterých vaše logika závisí.
Představte si skript, který potřebuje dvě tabulky s názvem „Tabulka1“ a „Tabulka2“ pro kopírování dat z jedné do druhé. Doporučený přístup je získat obě tabulky na začátku, zkontrolovat, zda nemají hodnotu null, a pokud některá chybí, zaznamenat zprávu vysvětlující problém a ukončit skript příkazem return z hlavní funkce.
Pokud tuto kontrolu provedete v pomocné funkci, můžete vrátit booleovskou hodnotu, která indikuje, zda je vše správně . Funkce main tuto funkci volá a pokud vrátí hodnotu false, ukončí se bez pokračování. Tento vzor umožňuje centralizovat ověření vstupu a udržet váš kód organizovanější a snadněji čitelný.
Kdy vyhodit chyby pomocí throw a jak použít try…catch
Ve většině scénářů stačí pouhé ukončení skriptu příkazem `return` a zobrazení popisné zprávy , aby uživatel věděl, co se stalo. Existují však případy, kdy můžete chtít spustit explicitní chybu, která zastaví nejen skript, ale i procesy, které jsou na něm závislé.
Pokud je skript součástí toku Power Automate, může být zásadní zabránit pokračování toku, pokud chybí kritické informace . V těchto případech má smysl použít příkaz `throw` k vyvolání výjimky s konkrétní zprávou, například když chybí požadovaná tabulka. Chyba způsobí zastavení provádění skriptu i toku.
Dalším užitečným nástrojem je blok try…catch, který umožňuje zachytit chyby během provádění volání API . Pokud se například pokusíte použít setValues() s datovou sadou, která je pro Excel na webu příliš velká, skript selže, pokud ji nezpracujete. Zabalením tohoto volání do bloku try…catch můžete zobrazit uživatelsky přívětivější zprávu a ukončit skript kontrolovaným způsobem.
Blok catch můžete dokonce použít k otestování alternativní strategie, pokud něco selže . V předchozím příkladu, pokud setValues() vyvolá chybu, můžete zavolat funkci, která zpracovává data v menších dávkách, čímž se minimalizuje riziko opětovného výskytu stejného problému.
Učení, příklady a další zdroje
Pokud již máte středně pokročilou nebo pokročilou úroveň Excelu a jste spokojeni s webovou verzí, bude pro vás učení se skriptům Office mnohem plynulejší . V ideálním případě byste si měli nejprve upevnit znalosti funkcí, tabulek a formátování a poté se ponořit do automatizace.
Existují kurzy a školicí materiály zaměřené na to, aby vás naučily, jak nahrávat, upravovat a spouštět skripty ve správný čas , a také vám ukázaly klíčové rozdíly mezi skripty a VBA a jak se vzájemně doplňují. Často se používají praktické příklady, jako jsou šablony faktur nebo opakované reporty, abyste mohli dané koncepty přímo aplikovat ve své každodenní práci.
Tyto typy školení obvykle také vysvětlují, jak přidat vlastní tlačítka pro spouštění skriptů, jak sdílet sešity se skripty mezi týmy a jak spouštět automatizace z kanálů Teams, což otevírá ještě více možností spolupráce.
Pokud se chcete ponořit ještě hlouběji, technická dokumentace společnosti Microsoft obsahuje návody k zaznamenávání akcí, podrobné návody, příklady skriptů připravené k použití a vysvětlení, jak v rozhraní vytvořit konkrétní tlačítka, která spustí konkrétní skript. To vše vám pomůže vytvářet stále sofistikovanější řešení.
Zvládnutí skriptů Office v Excelu pro web zcela změní způsob, jakým pracujete s tabulkami: přejdete od provádění opakujících se úkolů k navrhování automatizovaných procesů , které se vždy opakují bezchybně a za výrazně kratší dobu, ať už kliknutím na tlačítko, sdílením s týmem nebo integrací do kompletních pracovních postupů pomocí Power Automate. Sdílejte tuto příručku, aby se o ní mohlo dozvědět více uživatelů.