Spuštění makra

Důležité :  Tento článek je strojově přeložený – přečtěte si toto upozornění. Anglickou verzi tohoto článku pro referenci najdete tady.

Existuje několik způsobů, jak spouštět makra v aplikaci Microsoft Excel. Makro je akce nebo posloupnosti akcí, které můžete použít k automatizaci úkolů. Makra se zaznamenávají v jazyce Visual Basic for Applications programovacího jazyka. Vždy můžete spustit makro kliknutím na příkaz makra na pásu karet. Podle toho, jak makra přiřadí ke spuštění také je možné provádět stisknutím klávesy kombinaci CTRL Klávesová zkratka kliknutím na tlačítko na panelu nástrojů Rychlý přístup nebo ve vlastní skupině na pásu karet. nebo kliknutím na oblast objektu, grafickému prvku nebo ovládacího prvku. Kromě toho můžete spustit makro automaticky při otevření sešitu.

Poznámka : Při nastavení úrovně zabezpečení maker v aplikaci Excel a Zakázat všechna makra bez oznámení: Excel se spustí pouze makra, které jsou digitálně podepsané nebo uloženy v důvěryhodném umístění, například spouštěcí složce Excelu ve vašem počítači. Pokud je makra, které chcete spustit nejsou digitálně podepsané nebo umístěn v Důvěryhodné umístění, můžete dočasně změnit úroveň zabezpečení, který umožňuje všechna makra.

Před spuštěním maker

Je potřeba před spuštěním maker změnit v aplikaci Excel několik nastavení:

  1. Pokud není k dispozici karta Vývojář, zobrazte ji. Další informace najdete v tématu zobrazení karty Vývojář.

  2. Chcete-li dočasně nastavit úroveň zabezpečení tak, aby byla povolena všechna makra, postupujte následujícím způsobem:

    1. Na kartě Vývojář klikněte ve skupině Kód na tlačítko Zabezpečení maker.

      Karta Vývojář na pásu karet
    2. V kategorii Nastavení maker klikněte v části Nastavení maker na přepínač Povolit všechna makra (nedoporučuje se, mohlo by umožnit spuštění potenciálně nebezpečného kódu) a potom klikněte na tlačítko OK.

      Poznámka : Aby se zabránilo spuštění potenciálně nebezpečného kódu, doporučujeme vrátit se po dokončení práce s makry k nastavení se zakázanými makry.

  1. Otevřete sešit obsahující makro.

  2. Na kartě Vývojář klepněte ve skupině Kód na tlačítko Makra.

    Karta Vývojář na pásu karet
  3. V poli se seznamem Název makra klikněte na makro, které chcete upravit.

  4. Proveďte některou z následujících akcí:

    • Můžete také stisknout kombinaci kláves CTRL + F8 makro spustit. Makro ukončíte stisknutím klávesy ESC.

    • Ke spuštění makra z Microsoft modulu Visual Basic for Applications (VBA), klepněte na Upravit a potom v nabídce Spustit příkaz Run Sub/UserForm nebo stiskněte F5.

  1. Na kartě Vývojář klepněte ve skupině Kód na tlačítko Makra.

    Karta Vývojář na pásu karet
  2. V seznamu Název makra klikněte na makro, ke kterému chcete přiřadit klávesovou zkratku s klávesou CTRL.

  3. Klikněte na položku Možnosti.

    Zobrazí se dialogové okno Možnosti makra.

  4. Zadejte do pole Klávesová zkratka libovolné malé či velké písmeno, které chcete použít pro zkratku s klávesou CTRL.

    Poznámka : Tato klávesová zkratka má při otevření sešitu obsahujícího dané makro přednost před všemi stejnými výchozími klávesovými zkratkami aplikace Excel.

    Seznam Ctrl kombinace klávesových zkratek, které již byly přiřazeny v aplikaci Excel naleznete v článku klávesové zkratky a funkční klávesy aplikace Excel.

  5. Do pole Popis napište krátký popis makra.

  6. Uložte změny klinutím na tlačítko OK a potom kliknutím na tlačítko Storno zavřete dialogové okno Makro.

Ke spuštění makra pomocí tlačítka na panel nástrojů Rychlý přístup, musíte nejdřív přidat tlačítko na panelu nástrojů. Aby je dostala, najdete v článku přiřazení makra k tlačítku.

Můžete vytvořit vlastní skupinu, která se zobrazí na kartě na pásu karet a potom přiřadit makro k tlačítku v dané skupině. Můžete například přidat vlastní skupiny s názvem "Moje makra" na kartu Vývojář a pak přidejte makro (, které se zobrazí jako tlačítko) do nové skupiny. Aby je dostala, najdete v článku přiřazení makra k tlačítku.

Spuštění makra kliknutím na oblast grafického objektu

Vytvoření aktivní oblasti na obrázek, který uživatelů můžou kliknout ke spuštění makra.

  1. Do listu vložte grafický objekt, například obrázek, objekt klipart, obrazec nebo obrázek SmartArt.

    Další informace o vložení grafického objektu, najdete v článku Přidání, změna nebo odstranění obrazců.

  2. Vytvoření aktivní oblasti na existující objekt, klikněte naVložení > obrazce, vyberte obrazec, který chcete použít a potom nakreslete na existující objekt.

    Obrazce
  3. Klikněte pravým tlačítkem myši na aktivní oblast, kterou jste vytvořili a pak klikněte na Přiřadit makro.

  4. Proveďte některou z následujících akcí:

    • Chcete-li ke grafickému objektu přiřadit stávající makro, dvakrát na ně klikněte, nebo zadejte jeho název do pole Název makra.

    • Záznam nového makra: Pokud chcete přiřadit na vybraný grafický objekt, klikněte na záznam, zadejte název makra v dialogovém okně Záznam makra a klikněte na tlačítko OK se začne zaznamenávat makra. Po dokončení záznamu makra, klikněte na Zastavit záznam Obrázek tlačítka na kartě Vývojář ve skupině kód.

      Tip : Klikněte na tlačítko Zastavit záznam Obrázek tlačítka v levé části stavového řádku.

    • Chcete-li upravit existující makro, klikněte na jeho název v seznamu Název makra a na tlačítko Upravit.

  5. Klikněte na tlačítko OK.

  6. V listu vyberte aktivní. Zobrazí se nástroje Kreslení přidanou kartou Formát.

  7. Na kartě Formát klikněte ve skupině Styly obrazců na šipku u položky Výplň obrazce a potom klikněte na položku Bez výplně:

    Nabídka barev u tlačítka Výplň obrazce

  8. Klikněte na šipku vedle položky Obrys tvaru a poté klikněte na možnost Bez obrysu.

Pokud záznam makra a uložte ji s názvem automatické_otevření, makro se spustí pokaždé, když otevřete sešit obsahující makro. Další způsob, jak automatické spuštění makra při otevření sešitu je k vytvoření procedury jazyka VBA na událost Open sešitu pomocí Visual Basic Editor. Otevřete událost je předdefinovaná událost sešitu, které se spouští při každém otevření sešitu jeho kód makra.

Vytvoření makra automatické_otevření

  1. Chcete-li makro uložit s určitým sešitem, otevřete nejdříve daný sešit.

  2. Na kartě Vývojář klikněte ve skupině Kód na tlačítko Záznam makra.

  3. Do pole Název makra zadejte Automatické_otevření.

  4. V rozevíracím seznamu Uložit makro do vyberte sešit, do kterého chcete makro uložit.

    Tip : Pokud chcete makro je k dispozici při práci aplikace Excel, vyberte Osobní sešit maker. Po výběru Osobní sešit maker aplikace Excel vytvoří skryté osobním sešitě maker (Personal.xlsb), pokud dosud neexistuje a ukládá makro v tomto sešitu. Ve Windows Vista je tento sešit uložený ve složce name\AppData\Local\Microsoft\Excel\XLStart C:\Users\user. Pokud nemůžete najít ho tam, ji může byly uloženy v podsložce roamingu místo místní. V systému Microsoft Windows XP tento sešit uložený ve složce Data\Microsoft\Excel\XLStart C:\Documents and Settings\uživatelské ukládají. Sešity do složky XLStart jsou při každém spuštění Excelu automaticky neotevírají. Pokud chcete makro v osobním sešitě maker automatické spuštění v jiném sešitu, je nutné také uložit daný sešit do složky XLStart tak, že jsou tyto sešity otevřené při spuštění Excelu.

  5. Klikněte na tlačítko OK a proveďte akce, které chcete zaznamenat.

  6. Na kartě Vývojář ve skupině kód na tlačítko Zastavit záznam Obrázek tlačítka .

    Tip : Klikněte na tlačítko Zastavit záznam v levé části stavového řádku.

    Tlačítko Zastavit záznam ve stavovém řádku

Poznámky : 

  • Pokud jste při ukládání makra v kroku 6 zvolili položku Tento sešit nebo Nový sešit, uložte nebo přesuňte sešit do jedné ze složek XLStart.

  • Pro záznam makra Auto_otevření platí následující omezení:

    • Pokud ukládáte makro Auto_otevření do sešitu, který již obsahuje událost Open s procedurou jazyka VBA, procedura pro událost Open přepíše všechny akce v makru Auto_otevření.

    • Při programovém otevření sešitu pomocí metody Open je makro Auto_otevření ignorováno.

    • Makro Auto_otevření je spuštěno před otevřením jakéhokoli jiného sešitu. Při záznamu akcí, které mají být provedeny ve výchozím sešitu Sešit1 nebo v sešitu načteném ze složky XLStart, proto při restartování aplikace Excel nedojde ke spuštění makra Auto_Open, protože je makro spuštěno ještě před otevřením výchozích sešitů a sešitů otevřených při spuštění.

      Pokud narazíte na tato omezení, je nutné pro událost Open vytvořit místo makra Auto_otevření proceduru jazyka VBA. Příslušný postup je popsán v další části tohoto článku.

  • Jestliže chcete aplikaci Excel spustit bez spuštění makra Auto_otevření, podržte při spuštění aplikace Excel klávesu SHIFT.

Vytvoření procedury jazyka VBA pro událost Open sešitu

V následujícím příkladu je událost Open použita ke spuštění makra při otevření sešitu.

  1. Uložte a zavřete všechny otevřené sešity.

  2. Otevřete sešit, do kterého chcete přidat makro, nebo vytvořte nový sešit.

  3. Na kartě Vývojář klikněte ve skupině Kód na tlačítko Visual Basic.

  4. V okně průzkumníka projektů klikněte pravým tlačítkem myši na objekt ThisWorkbook (Tento_sešit) a klikněte na možnost View Code (Zobrazit kód).

    Tip : Pokud okno Prohlížeč projektu není zobrazen, v nabídce Zobrazit klikněte na položku Průzkumník projektu.

  5. V seznamu Object (Objekt) nad oknem kódu vyberte položku Workbook (Sešit).

    Tím se automaticky vytvoří procedury pro událost Open , třeba takto:

    Private Sub Workbook_Open()

    End Sub

  6. Přidejte do procedury následující řádky kódu:

    Private Sub Workbook_Open()
    MsgBox datum
    Worksheets("Sheet1"). Range("a1"). Hodnota = datum
    End Sub

  7. Přejděte do aplikace Excel a sešit uložte jako sešit aplikace Excel s podporou maker (soubor XLSM).

  8. Zavřete a znovu otevřete sešit. Při novém otevření souboru je spuštěna procedura Workbook_Open, která zobrazí okno s aktuálním datem.

  9. Klikněte v okně na tlačítko OK.

    Poznámka : Buňky A1 na listu List1 obsahuje také důsledku spuštění procedury Workbook_Open se datum.

Potřebujete další pomoc?

Můžete vždy požádat odborník na Komunitu Odborný Excel, využijte možnost získání podpory v odpovědi komunitynebo navrhnout novou funkci nebo zlepšený Excel uživatele hlasovou

Začátek stránky

Poznámka : Upozornění ke strojovému překladu: Tento článek přeložil počítačový systém bez zásahu člověka. Společnost Microsoft nabízí tyto strojové překlady proto, aby umožnila uživatelům, kteří nemluví anglicky, získat informace o produktech, službách a technologiích této společnosti. Protože je tento článek strojově přeložený, může obsahovat slovní, syntaktické nebo gramatické chyby.

Viz taky

Automatické spuštění makra při otevření sešitu

Automatické úkolů pomocí záznamu makra

Záznam makra pro otevření konkrétních sešitů při spuštění Excelu

Vytvořit a uložit všechna makra v jednom sešitu

Uložení makra

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×