VBA Select Sheet, Activate Sheet, and Get Activesheet

Associated Files Download Links

This article will discuss the ActiveSheet object in VBA. It will also discuss how to activate, select, and go to Worksheets (& much more).

ActiveSheet

In VBA, ActiveSheet refers to the currently active Worksheet. Only one Sheet may be active at a time.

Activate Worksheet (Setting the ActiveSheet)

To set the ActiveSheet use Worksheet.Activate:

The Activate Sheet command will actually “go to” the sheet, changing the visible Sheet.

vba activate sheet

The above example uses the Sheet (Tab) name.  Instead you can use the VBA code name for the worksheet:

vba activesheet

ActiveSheet Name

To get the ActiveSheet Name:

Selected Sheets vs ActiveSheet

At any point in time, only one Sheet can be the ActiveSheet. However, multiple Worksheets can be selected at once.

When multiple Worksheets are selected only the “top-most” Worksheet is considered active (the ActiveSheet).

vba selected sheets

Select Worksheet

If you would like to select a worksheet instead of activating it. Use .select instead.

Select Worksheet by Tab Name

This selects a Worksheet based on it’s Sheet Tab Name

vba select sheet

Select Worksheet by Index Number

This selects a Worksheet based on it’s position relative to other tabs

vba select sheet index number

Select Worksheet With VBA Code Name

Selecting worksheets by code name can prevent errors caused by worksheet name changes.

Select Current Worksheet

To select the current Worksheet, use the ActiveSheet object:

 

More Activate / Select Sheet Examples

Set ActiveSheet to Variable

Change ActiveSheet Name

With ActiveSheet

Using With allows you to streamline your code when working with objects (such as Sheets or ActiveSheet).

Notice how you don’t need to repeat “ActiveSheet” before each line of code. This can be a huge time saver when working with a long list of commands.

Loop Through Selected Sheets

The following macro will loop through all selected sheets, displaying their names.

GoTo Next Sheet

This code will go to the next Sheet. If the ActiveSheet is the last Sheet, then it will go to the first Sheet in the Workbook.

VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro – A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!

Select Activate Worksheet

 

Learn More!


<<Return to VBA Examples

Did you find this VBA tutorial useful? Then share it with your friends and colleagues:

You may also like some of this related content...

ActiveWindow.Zoom You can use VBA to change the Zoom of a worksheet. Here's code to
Macros applied to an entire workbook can be handy for extracting data from multiple sheets
The following macro loops through every sheet in a workbook and writes the tab name
This tutorial will teach you how to hide and unhide Worksheets with VBA Hide Sheet
The following routine will sort the sheets in a workbook alphabetically. The flag “Sort_Mode_Descending” can
Ads