VBA macro tip contributed by
Erlandsen
Data Consulting offering Microsoft Excel Application development,
template customization, support and training solutions
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
Terms
and Conditions of use
The applications/code on this site are distributed as is and without warranties
or liability. In no event shall the owner of the copyrights, or the authors
of the applications/code be liable for any loss of profit, any problems
or any damage resulting from the use or evaluation of the applications/code.