O'Reilly logo

Programming Excel with VBA and .NET by Steve Saunders, Jeff Webb

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

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 ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required