dnes je 17.7.2024

Input:

Vytvoření nového makra zápisem v modulu VBA

1.6.2007, , Zdroj: Verlag Dashöfer

Vytvoření nového makra zápisem v modulu VBA

Přímým zápisem v editoru VBA do modulu vytváříme makro bez nutnosti předchozího záznamu. Tento způsob je vhodný pro vytváření obdobných maker k již existujícím, ke kopírování maker a k makrům, kde se využívají příkazy a vlastnosti, které nelze v záznamu zaznamenat (cykly, podmínky apod.)

Vytvoření nového makra kopií a následnou úpravou původního

Pro procvičení příkladu této části si otevřeme soubor mk05_a.xls.

Máme následující jednoduchý příklad:

V souboru mk05_a máme makro, které nám po stisku klávesové zkratky Ctrl+h zapíše do buňky AHOJ. Na základě tohoto makra chceme přímým zápisem (bez jakýchkoli záznamů) vytvořit 5 maker: pondeli, utery, streda, ctvrtek, patek. Tato makra budou spouštěna klávesovou zkratkou Ctrl+a až Ctrl+e podle pořadí dne v týdnu.

Postup je následující:

  1. Otevřeme soubor mk05_a.xls a přepneme jej do modulu makra AHOJ v editoru VBA:

  2. Uděláme si pod makrem místo a začneme psát:

    Sub pondeli()

    a stiskneme klávesu ENTER. Na další řádku se automaticky dopíše ukončení:

    End Sub

  3. Do prostoru makra (mezi Sub a End Sub) opíšeme kód pro zápis do buňky z předchozího makra s textem „pondělí“:

    Sub pondeli()

    ActiveCell.FormulaR1C1 = "pondělí"

    End Sub

  4. Obdobným způsobem zapíšeme dalších 6 maker (utery–patek). Výsledné kódy budou vypadat následovně:

    Sub pondeli()

    ActiveCell.FormulaR1C1 = "pondělí"

    End Sub


    Sub utery()

    ActiveCell.FormulaR1C1 = "úterý"

    End Sub


    Sub streda()

    ActiveCell.FormulaR1C1 = "středa"

    End Sub


    Sub ctvrtek()

    ActiveCell.FormulaR1C1 = "čtvrtek"

    End Sub


    Sub patek()

    ActiveCell.FormulaR1C1 = "pátek"

    End Sub

  5. Nastavení

Nahrávám...
Nahrávám...