Workbook events

 1999-08-21    Events    0    180

Events for the Workbook object occurs when the workbook is changed or a sheet in the workbook is changed. Events in workbooks are activated by default, but can be deactivated by a macro. To display the event procedures for a workbook you use the Visual Basic Editor. Select the desired project in the Project-window and activate the object ThisWorkbook by doubleclicking it. Any event procedures in the workbook will now be displayed in the Code-window on the right side of the screen. You can create a new event procedure by selecting Workbook in the Object dropdown, and then select an event in the Procedure dropdown.
Macros can be attached to the following events in a workbook:

Activate
AddinInstall
AddinUninstall
BeforeClose
BeforePrint
BeforeSave
Deactivate
NewSheet
Open
SheetActivate
SheetBeforeDoubleClick
SheetBeforeRightClick
SheetCalculate
SheetChange
SheetDeactivate
SheetSelectionChange
WindowActivate
WindowDeactivate
WindowResize
This example eventmacro will maximize Excel when a workbook is opened, the procedure must be written in the workbook module ThisWorkbook:

Private Sub Workbook_Open()
    Application.WindowState = xlMaximized
End Sub
This example eventmacro will prevent the user from activation other worksheets than the first worksheet, the procedure must be written in the workbook module ThisWorkbook:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Worksheets(1).Activate
End Sub