Sukurkite programos objekto įvykių makrokomandas naudodami „Microsoft Excel“ VBA

Anonim

Paleiskite „Visual Basic“ redaktorių.
Projekto lange pasirinkite norimą projektą.
Įdėkite naują klasės modulį pasirinkę meniu Įterpti | Klasės modulis.
Suaktyvinkite naują klasės modulį ir pervardykite jį, pvz. „AppEventClass“
Nukopijuokite ir įklijuokite šias makrokomandų pavyzdžius į naują klasės modulį:

Public WithEvents Appl As Application Private Sub Appl_NewWorkbook (ByVal Wb As Workbook) 'jūsų kodas čia MsgBox "Nauja darbo knyga sukurta!" Baigti Sub Privatus Sub Appl_WorkbookBeforeClose (ByVal Wb As Workbook, _ Cancel As Boolean) 'your code here MsgBox "Darbo knyga uždaryta!" Pabaiga Privatus antrinis Appl_WorkbookBeforePrint (ByVal Wb Kaip darbaknygė, _ Atšaukti kaip loginis) 'jūsų kodas čia MsgBox "Darbo knyga atspausdinta!" Baigti subprivatų papildomą programą Appl_WorkbookBeforeSave (ByVal Wb kaip darbaknygė, _ ByVal SaveAsUI kaip loginė, atšaukti kaip loginė) 'jūsų kodas čia MsgBox "Darbo knyga išsaugota!" Pabaiga Sub Privatus Sub Appl_WorkbookOpen (ByVal Wb As Workbook) 'jūsų kodas čia MsgBox "Darbo knyga atidaryta!" Pabaiga Sub

Baigę redaguoti programos objekto įvykių makrokomandas,
Norėdami suaktyvinti naujas įvykių makrokomandas, turite pridėti kodą prie „ThisWorkbook“ modulio:

Dim ApplicationClass as New AppEventClass Private Sub Workbook_Open () Nustatykite ApplicationClass.Appl = Programos pabaigos antraštė

Paleidus „Workbook_Open“ procedūrą, suaktyvinami su objektu „Application“ susiję įvykiai.