Palaidiet makro, kad programma Excel tiek palaista - VBA koda piemēri

Vai, palaižot programmu Excel, ir jāpalaiž makro? Jums ir divas iespējas:

1. Izveidojiet apakšgrāmatu Workbook_Open () sadaļā “ThisWorkbook”.

2. Ievietojiet apakšdaļu Auto_Open () jebkurā modulī.

Darbgrāmata_atvērt notikumu

Izveidojiet apakšvirsrakstu “Workbook_Open” sadaļā “ThisWorkbook”

123 Workbook_open ()MsgBox "Šis kods tika palaists Excel sākumā!"Beigt apakš

Automātiski_atvērt

Izmantojot otro metodi: vienkārši izveidojiet apakšprogrammu ar nosaukumu Auto_Open un ievietojiet tajā kodu vai no turienes izsauciet citu apakšprogrammu. Sākot programmu Excel, jūsu kods tiek palaists automātiski.

123 Privāta apakšautomātiskā atvēršana ()MsgBox "Šis kods tika palaists Excel sākumā!"Beigt apakš

Izveidojiet un nosauciet jaunu darblapu ikreiz, kad tiek atvērta programma Excel

Šis kods darbojas, atverot darbgrāmatu. Tas automātiski pievieno jaunu lapu un apzīmē to ar datumu. Tā arī pārbauda, ​​vai lapa vēl neeksistē - lai to varētu atvērt vairāk nekā vienu reizi dienā.

Šis kods izmanto darbgrāmatas atvērto notikumu, un tas jāievieto darbgrāmatas modulī pasākuma “Atvērtā darba grāmata” ietvaros. Funkcija Sheet_Exist ir jāievieto modulī, un tas pārbauda, ​​vai lapa pastāv:

123456789101112131415 Privāta apakšdarbgrāmata_atvērt ()Dim New_Sheet_Name kā virkneNew_Sheet_Name = Formāts (tagad (), "dd-mm-yy")Ja Sheet_Exists (New_Sheet_Name) = NepareiziAr darba burtnīcuWorksheets.Add (). Name = New_Sheet_NameBeigt arBeigas JaSaglabātBeigt apakš
12345678910111213 Funkcija Sheet_Exists (WorkSheet_Name As String) kā BūlaAptumšot darblapu kā darblapuSheet_Exists = NepareiziPar katru darblapu šajā darba grāmatā. Darba lapasJa Work_sheet.Name = WorkSheet_Name TadSheet_Exists = TrueBeigas JaNākamaisBeigu funkcija

Lai lejupielādētu .XLSM failu šai apmācībai, noklikšķiniet šeit

Atverot darbgrāmatu, iestatiet noklusējuma lapu

Vai vēlaties pārliecināties, ka lapa vienmēr tiek parādīta vispirms, kad tiek atvērta darbgrāmata? Piemēram, atverot darbgrāmatas lapu3, vienmēr ir aktīvā lapa. Lūk, kā.

Jūs varat atsaukties uz lapu no VBA pēc tās programmas nosaukuma (ti, Sheet3) vai pēc cilnes nosaukuma (ti, JanData). Vislabāk ir izmantot programmas nosaukumu, jo, mainoties cilnes nosaukumam, jūsu VBA kods, kas attiecas uz cilnes nosaukumu, vairs nedarbosies. Tomēr, ja izmantojat programmas nosaukumu, lietotājs var mainīt cilnes nosaukumu vairākas reizes, un jūsu makro joprojām darbojas.

Lai pārliecinātos, ka, atverot darbgrāmatu, vienmēr tiek aktivizēta noteikta lapa, vienkārši ievietojiet sheet.activate kodu apakšgrāmatā workbook_open. Šis ir piemērs, kas aktivizē lapu 3, izmantojot programmas nosaukumu ikreiz, kad tiek atvērta darbgrāmata.

123 Privāta apakšdarbgrāmata_atvērt ()3. lapa. AktivizētBeigt apakš

Un tas tiek darīts, izmantojot cilnes nosaukumu:

1234 Privāta apakšdarbgrāmata_atvērt ()Izklājlapas ("mytabname"). AktivizētBeigt apakš

Sidenote: Lai tas darbotos, jums ir jāsaglabā un jārestartē programma Excel.
Sidenote: Tas darbojas tikai tad, ja ir iespējoti makro.
Sidenote: Ievietojiet šo kodu VWB objekta ThisWorkbook koda logā.

Ielādēt veidlapu katru reizi, kad tiek atvērta darbgrāmata

Ja, atverot Excel darbgrāmatu, vēlaties ielādēt veidlapu vai palaist kādu VBA kodu, ievietojiet kodu logā Šī darbgrāmatas kods un apakšgrāmatā Workbook_Open.

No izklājlapas:
1. Nospiediet ALT un F11, lai atvērtu VB redaktoru
2. Veiciet dubultklikšķi uz vārda ThisWorkbook, lai atvērtu koda logu
3. Logā ThisWorkbook kods ierakstiet šādu kodu

123 Privāta apakšdarbgrāmata_atvērt ()UserForm1.ShowBeigu apakš

Sidenote: aizstājiet Userform1 ar veidlapas nosaukumu

4. Aizveriet programmu Excel un atveriet to vēlreiz.

wave wave wave wave wave