Potrebujete spustiť makro, keď sa spustí Excel? Máte dve možnosti:
1. V časti „Táto pracovná kniha“ vytvorte podponuku Workbook_Open ().
2. Do akéhokoľvek modulu umiestnite podsekciu Auto_Open ().
Zošit_Otvorená udalosť
V „ThisWorkbook“ vytvorte podtitul s názvom „Pracovný zošit_Otvorený“.
123 | Zošit_otvorený ()MsgBox "Tento kód bol spustený pri štarte programu Excel!"Koniec pod |
Auto_Open
Použitie druhej metódy: Jednoducho vytvorte podprogram s názvom Auto_Open a vložte doň kód alebo z neho zavolajte ďalší podprogram. Kód sa automaticky spustí, keď sa spustí Excel.
123 | Súkromné čiastkové automatické otváranie ()MsgBox "Tento kód bol spustený pri štarte programu Excel!"Koniec pod |
Vytvorte a pomenujte nový pracovný hárok vždy, keď sa otvorí Excel
Nasledujúci kód funguje pri otvorení zošita. Automaticky pridá nový hárok a označí ho dátumom. Kontroluje tiež, či hárok ešte neexistuje - aby sa umožnilo jeho otvorenie viac ako raz denne.
Tento kód využíva otvorenú udalosť zošita a musí byť umiestnený v module zošita pod udalosťou „otvorený zošit“. Funkcia Sheet_Exist musí byť umiestnená v module a kontroluje, či hárok existuje alebo nie:
123456789101112131415 | Súkromný čiastkový zošit_Otvorený ()Dim New_Sheet_Name as StringNew_Sheet_Name = Formát (Teraz (), "dd-mm-rr")Ak Sheet_Exists (New_Sheet_Name) = False ThenSo zošitomWorksheets.Add (). Name = New_Sheet_NameUkončiť sKoniec AkUložiťKoniec pod |
12345678910111213 | Funkcia Sheet_Exists (WorkSheet_Name As String) As BooleanDim Work_sheet as WorkheetSheet_Exists = FalsePre každý pracovný list v ThisWorkbook.WorksheetsAk Work_sheet.Name = WorkSheet_Name PotomSheet_Exists = PravdaKoniec AkĎalšieKoncová funkcia |
Kliknite sem, ak si chcete stiahnuť súbor .XLSM pre tento návod
Nastaviť predvolený list pri otvorení zošita
Chcete zaistiť, aby sa hárok vždy zobrazoval ako prvý pri otvorení zošita? Keď napríklad otvoríte zošit, list3 je vždy aktívny list. Tu je postup.
Na list z VBA sa môžete odkazovať podľa názvu programu (tj. Sheet3) alebo podľa názvu karty (napr. JanData). Najlepšie je použiť názov programu, pretože ak sa názov karty zmení, váš kód VBA, ktorý odkazuje na názov karty, už nebude fungovať. Ak však použijete názov programu, používateľ môže názov záložky zmeniť viackrát a vaše makro stále funguje.
Aby ste sa uistili, že sa určitý hárok vždy aktivuje pri otvorení zošita, stačí vložiť hárok.aktivujte kód do čiastkového zošita. Toto je príklad, ktorý aktivuje sheet3 pomocou názvu programu pri každom otvorení zošita.
123 | Súkromný čiastkový zošit_Otvorený ()List 3. AktivujteKoniec pod |
A to sa deje pomocou názvu karty:
1234 | Súkromný čiastkový zošit_Otvorený ()Tabuľky ("mytabname"). AktivujteKoniec pod |
Poznámka: Aby to fungovalo, musíte program Excel uložiť a reštartovať.
Sidenote: Toto funguje iba vtedy, ak sú povolené makrá.
Poznámka: Vložte tento kód do okna kódu pre objekt ThisWorkbook vo VBE.
Načítať formulár pri každom otvorení zošita
Ak chcete pri otváraní zošita programu Excel načítať formulár alebo spustiť nejaký kód VBA, zadajte kód do okna s kódom Thisworkbook a do podponoly Workbook_Open.
Z vašej tabuľky:
1. Stlačením klávesov ALT a F11 otvorte editor VB
2. Dvojitým kliknutím na slovo ThisWorkbook otvoríte okno s kódom
3. Do okna Kód ThisWorkbook zadajte nasledujúci kód
123 | Súkromný čiastkový zošit_Otvorený ()UserForm1.ShowKoniec pod |
Poznámka: Nahraďte Userform1 názvom formulára
4. Zatvorte Excel a znova ho otvorte.