Spusťte makro při spuštění aplikace Excel - Příklady kódu VBA

Potřebujete spustit makro při spuštění Excelu? Máte dvě možnosti:

1. Vytvořte pod Workbook_Open () díl v „ThisWorkbook“.

2. Umístěte dílčí díl Auto_Open () do jakéhokoli modulu.

Sešit_Otevřená událost

V „ThisWorkbook“ vytvořte podtitul „Sešit_Otevřený“

123 Sešit_otevřený ()MsgBox "Tento kód běžel při spuštění aplikace Excel!"End Sub

Auto_Open

Pomocí druhé metody: Jednoduše vytvořte podprogram nazvaný Auto_Open a vložte do něj kód, nebo odtud zavolejte jiný dílčí program. Automaticky se váš kód spustí při spuštění aplikace Excel.

123 Soukromé Sub Auto_Open ()MsgBox "Tento kód běžel při spuštění aplikace Excel!"End Sub

Vytvořte a pojmenujte nový list vždy, když se otevře Excel

Následující kód funguje při otevření sešitu. Automaticky přidá nový list a označí jej datem. Zkontroluje také, zda list již neexistuje - aby bylo možné jej otevřít více než jednou denně.

Tento kód využívá otevřenou událost sešitu a musí být umístěn v modulu sešitu pod událostí „Otevřít sešit“. Funkce Sheet_Exist musí být umístěna v modulu a toto kontroluje, zda list existuje:

123456789101112131415 Soukromý dílčí sešit_Otevřít ()Dim New_Sheet_Name jako řetězecNew_Sheet_Name = Formát (nyní (), "dd-mm-rr")Pokud Sheet_Exists (New_Sheet_Name) = False ThenSe sešitemWorksheets.Add (). Name = New_Sheet_NameKonec sKonec IfUložitEnd Sub
12345678910111213 Funkce Sheet_Exists (WorkSheet_Name As String) As BooleanDim Work_sheet as WorksheetSheet_Exists = FalsePro každý pracovní list v ThisWorkbook.WorksheetsIf Work_sheet.Name = WorkSheet_Name ThenSheet_Exists = PravdaKonec IfdalšíKoncová funkce

Kliknutím sem stáhnete soubor .XLSM pro tento výukový program

Nastavit výchozí list při otevření sešitu

Chcete zajistit, aby se list vždy zobrazoval jako první při otevření sešitu? Například když otevřete sešit list3 je vždy aktivní list. Zde je postup.

Na list z VBA můžete odkazovat podle názvu programu (tj. Sheet3) nebo podle názvu karty (tj. JanData). Nejlepší je použít název programu, protože pokud se název karty změní, váš kód VBA odkazující na název karty již nebude fungovat. Pokud však použijete název programu, uživatel může název karty změnit vícekrát a vaše makro stále funguje.

Abyste zajistili, že se při otevření sešitu vždy aktivuje určitý list, stačí umístit sheet.activate kód do dílčího sešitu_otevření. Toto je příklad, který aktivuje sheet3 pomocí názvu programu při každém otevření sešitu.

123 Soukromý dílčí sešit_Otevřít ()List 3. AktivovatEnd Sub

A to pomocí názvu karty:

1234 Soukromý dílčí sešit_Otevřít ()Tabulky („mytabname“). AktivujteEnd Sub

Sidenote: Aby to fungovalo, musíte Excel uložit a restartovat.
Poznámka: Toto funguje pouze v případě, že jsou povolena makra.
Poznámka: Vložte tento kód do okna kódu pro objekt ThisWorkbook ve VBE.

Načíst formulář při každém otevření sešitu

Pokud byste chtěli načíst formulář nebo spustit nějaký kód VBA při otevření sešitu aplikace Excel, vložte kód do okna kódu Thisworkbook a do dílčího sešitu Workbook_Open.

Z vaší tabulky:
1. Stisknutím ALT a F11 otevřete editor VB
2. Poklepáním na slovo ThisWorkbook otevřete okno kódu
3. Do okna Kód ThisWorkbook zadejte následující kód

123 Soukromý dílčí sešit_Otevřít ()UserForm1.ShowEnd Sub

Sidenote: Nahraďte Userform1 názvem vašeho formuláře

4. Zavřete Excel a znovu otevřete.

wave wave wave wave wave