In VBA ‘RunAutoMacros’ Workbook method is used to runs the ‘xlRunAutoMacros’ which is attached to the workbook. Where xlRunAutoMacros’ can be one of these: xlAutoActivate or xlAutoDeactivate or xlAutoOpen or xlAutoClose. We can write these macros in the standard module. If auto run macros are available in workbook events then it will fire the auto run macros in the standard module before running in workbook events.

VBA RunAutoMacros Method Excel Workbook Object

Why we need RunAutoMacros Workbook using VBA?

If we want to run macros automatically in certain time we use RunAutoMacros method of Workbook object.

VBA RunAutoMacros Workbook – Syntax

Here is the syntax to RunAutoMacros workbook method using VBA.

Workbooks(“Your Workbook Name”).RunAutoMacros(Which As XlRunAutoMacro)

Where ‘Which’ is the required parameter. ‘Which’ can be one of the below.

xlAutoActivate3Auto_Activate macros
xlAutoClose2Auto_Close macros
xlAutoDeactivate4Auto_Deactivate macros
xlAutoOpen1Auto_Open macros

In the above syntax we are using ‘RunAutoMacros‘ method of workbook object to run auto macros in the standard module.

VBA RunAutoMacros Workbook: Example 1

Please find the below example, It will show you how to run auto macros in the standard module.
Standard Module:

Private Sub Auto_Open()
MsgBox "Auto Open Event"
End Sub

Workbook Event:

Private Sub Workbook_Open()
MsgBox "Workbook Open Event"
End Sub

Explanation: You can write procedures in the standard module and then call those macros in the workbook events instead of writing it in Workbook event. Its use to navigate the code in the standard module while debugging the code.
Note:If we have written both the above macros in the same workbook, while running macro it will fire the AutoRun macro in the standard module first and then it will run workbook event.

VBA RunAutoMacros Workbook – Instructions

Please follow the below step by step instructions to execute the above mentioned VBA macros or codes:

  1. Open an Excel Workbook
  2. Press Alt+F11 to Open VBA Editor
  3. Insert a Module from Insert Menu
  4. Copy the above code for activating a range and Paste in the code window(VBA Editor)
  5. Save the file as macro enabled workbook
  6. Press ‘F5’ to run it or Keep Pressing ‘F8’ to debug the code line by line.

Hey! Join Our Community

Get Quick Responses & Experts' Answers in Minutes!
Get Notified - When Answered Your Question!