Opprett hendelsesmakroer for applikasjonsobjektet ved hjelp av VBA i Microsoft Excel

Anonim

Start Visual Basic -redigereren.
Velg ønsket prosjekt i prosjektvinduet.
Sett inn en ny klassemodul ved å velge menyen Sett inn | Klassemodul.
Aktiver den nye klassemodulen og gi den nytt navn, f.eks. AppEventClass
Kopier og lim inn disse eksempelmakroene til den nye klassemodulen:

Offentlig WithEvents Appl As Application Private Sub Appl_NewWorkbook (ByVal Wb As Workbook) 'din kode her MsgBox "En ny arbeidsbok er opprettet!" End Sub Private Sub Appl_WorkbookBeforeClose (ByVal Wb As Workbook, _ Cancel As Boolean) 'din kode her MsgBox "En arbeidsbok er stengt!" End Sub Private Sub Appl_WorkbookBeforePrint (ByVal Wb As Workbook, _ Cancel As Boolean) 'din kode her MsgBox "En arbeidsbok skrives ut!" End Sub Private Sub Appl_WorkbookBeforeSave (ByVal Wb As Workbook, _ ByVal SaveAsUI As Boolean, Cancel As Boolean) 'din kode her MsgBox "En arbeidsbok er lagret!" End Sub Private Sub Appl_WorkbookOpen (ByVal Wb As Workbook) 'din kode her MsgBox "En arbeidsbok åpnes!" Slutt Sub

Etter at du er ferdig med å redigere hendelsesmakroene for programobjektet,
du må legge til noen kode i modulen ThisWorkbook for å aktivere de nye hendelsesmakroene:

Dim ApplicationClass As New AppEventClass Private Sub Workbook_Open () Set ApplicationClass.Appl = Application End Sub

Etter at du har kjørt Workbook_Open -prosedyren, blir hendelsene som er knyttet til programobjektet, aktivert.