Respond to Actions

The Workbook object provides events you can use to respond to user actions. In order to use these events, write your code in the ThisWorkbook module of the workbook (in the Visual Basic Editor, double-click on ThisWorkbook in the Project window). Visual Basic displays the Workbook events in the event list at the top of the Code window as shown in Figure 8-18.

Selecting an event from the event list inserts a template for the event in the Code window, as shown here:

Select Workbook events from the Code window events list

Figure 8-18. Select Workbook events from the Code window events list

Private Sub Workbook_Activate(  )
 
End Sub

Any code you add to this procedure executes when the event occurs—in this case when the workbook receives focus. This event doesn’t just occur when the user activates the workbook, it also occurs when code activates the workbook.

The names of most events are pretty self-explanatory and I won’t bore you with circular definitions. Instead, here is the list of events that the Workbook object provides:

Private Sub Workbook_Activate( ) End Sub   Private Sub Workbook_AddinInstall( ) End Sub   Private Sub Workbook_AddinUninstall( ) End Sub   Private Sub Workbook_AfterXmlExport(ByVal Map As XmlMap, _ ByVal Url As String, ByVal Result As XlXmlExportResult) End Sub   Private Sub Workbook_AfterXmlImport(ByVal Map As XmlMap, _ ByVal IsRefresh As Boolean, ByVal Result As XlXmlImportResult) End Sub   Private ...

Get Programming Excel with VBA and .NET now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.