How to Select All Worksheets in Excel VBA

Selecting all worksheets in an Excel workbook is a common task that can become tedious if performed manually, especially in workbooks with a large number of sheets. Using Excel VBA (Visual Basic for Applications), you can automate this process with a simple script. This tutorial will guide you through the steps to create a VBA macro to select all worksheets in an Excel workbook.


To write the VBA code that will select all the sheets in your workbook, you will need to follow these steps:

Step 1: Access the VBA Editor

Open the Excel workbook where you want to run the macro. Then, press Alt + F11 to access the VBA editor where you can write and run your code.

Step 2: Insert a New Module

In the VBA Editor, right-click on any of the existing items in the Project Explorer, hover over Insert, and then click on Module. This will create a new module where you can type your code.

Step 3: Write the VBA Code

In the new module, type the following code:

This code creates a subroutine named SelectAllSheets. Within this subroutine, a For Each loop iterates through each worksheet in the workbook (ThisWorkbook). The Select method is used with the False parameter to add each worksheet to the current selection.

Step 4: Run the Macro

With the code entered, you can now run the macro by pressing F5 or by using the Run button in the toolbar. Ensure that the SelectAllSheets subroutine is selected in the dropdown list before running it.



Using VBA to select all worksheets in an Excel workbook is effective and saves time, particularly for workbooks with multiple sheets. By following the steps outlined above, you can write and run a simple but powerful VBA macro that will select all sheets at once.

By incorporating this script into your Excel workflow, you can effortlessly manage and manipulate multiple worksheets without the need for repetitive manual selection.

Tomasz Decker is an Excel specialist, skilled in data analysis and financial modeling.

Posted in vba