VBA s / Konec s prohlášením

Tento článek předvede, jak ve VBA používat With and End With

Excel nám poskytuje příležitost naučit se VBA zaznamenáváním maker. Tato makra zaznamenávají doslova vše, co děláme na obrazovce, a převádějí akce do kódu VBA. Tento kód pak můžeme analyzovat a učit se z něj.

Když zaznamenáváme makro ve VBA, nejvýrazněji při změně formátu buněk, makro při záznamu častěji než nepoužívá syntaxi With… End With Syntax. Pochopení toho, co to znamená a pro co se používá, je důležitou součástí VBA.

Záznam makra

Chcete -li zaznamenat makro v aplikaci Excel, v Stuha, vyberte Zobrazit> Makro> Nahrát makro.

NEBO

Vývojář> Nahrát makro

Poznámka: Pokud Vývojářskou pásku nevidíte, budete ji muset povolit. Kliknutím ZDE se dozvíte, jak to udělat.

Zadejte název makra a klikněte na OK.

Zvýrazněte některé buňky a poté je naformátujte na tučné, změňte barvu na červenou a změňte velikost písma. Potom kliknutím na Zastavit v levém dolním rohu obrazovky nahrávání makra zastavte.

SE syntaxí příkazů

Zobrazení / úprava zaznamenaného makra: Na pásu karet vyberte Zobrazit> Makra> Zobrazit makra. Vyberte právě zaznamenané makro a poté klikněte Upravit.

NEBO

Na pásu karet vyberte Vývojář> Visual Basic přepnete do okna VBE.

Zaznamenané makro může vypadat podobně jako v příkladu níže

123456789 Sub s Macro ()Rozsah („A2: C10“). VyberteSelection.Font.Bold = TrueSelection.Font.Size = 12S Selection.Font.Barva = -16776961.TintAndShade = 0Konec sEnd Sub

Nejprve jsme vybrali rozsah A2: C10.

Poté jsme nastavili tučné písmo na true a velikost písma na 12. Všimněte si, že kód „Selection.Font“ se pro tyto řádky opakuje.

Makro nás poté zaznamenalo, jak měníme barvu textu - všimněte si, že tentokrát má Selection.Font a S před ním a 2 vlastnosti, které se mění (barva a odstín odstínu), mají před sebou tečku (.). Oblast kódu je pak doplněna znakem KONEC S.

Abychom tento kód zjednodušili, můžeme tučné písmo a velikost přesunout tak, aby byly v příkazu WITH, a odstranit tak potřebu opakovat slovo Výběr.

123456789 Sub s Macro ()Rozsah („A2: C10“). VyberteS Selection.Font.Tučné = Pravda.Velikost = 12.Barva = -16776961.TintAndShade = 0Konec sEnd Sub

Syntaxe příkazu WITH… END WITH je tedy velmi jednoduchá:

123 S OBJEKTEM'vlastnosti k formátování/změněKONEC S

Mohli jsme kód pozměnit jiným způsobem:

1234567 Sub OdebratWith ()Rozsah („A2: C10“). VyberteSelection.Font.Bold = TrueSelection.Font.Size = 12Selection.Font.Color = -16776961Selection.Font.TintAndShade = 0End Sub

Ve výše uvedeném příkladu jsme do každého řádku kódu přidali slova Selection.Font. Proto jsme v kódu opakovaně odkazovali na objekt Selection.Font.

Použití příkazu WITH však znamená, že se na tento objekt musíme v kódu odkazovat pouze jednou. Je to čistší způsob kódování - říká VBA, aby začal s WITH a konec s END WITH - kód pro spuštění je uzavřen v těchto 2 slovech. Díky tomu se makro spouští rychleji a efektivněji (zejména u delších maker) a přidává strukturu do vašeho kódu.

wave wave wave wave wave