Activate Workbook Or Worksheet in Excel VBA

Home/Excel VBA/Activate Workbook Or Worksheet in Excel VBA

Description:

Sometimes we may want to Activate Workbook Or Worksheet using Excel VBA.You can use Activate property Activate Workbook Or Work Sheet.

PREMIUM TEMPLATES LIMITED TIME OFFER

ON SALE80% OFF

BROWSE ALL TEMPLATES

50+ Project Management Templates Pack
Excel PowerPoint Word

VIEW DETAILS

Advanced Project Plan & Portfolio Template
Excel Template

VIEW DETAILS

Ultimate Project Management Template
Excel Template

VIEW DETAILS

20+ Excel Project Management Pack
Excel Templates

VIEW DETAILS

20+ PowerPoint Project Management Pack
PowerPoint Templates

VIEW DETAILS

10+ MS Word Project Management Pack
Word Templates

VIEW DETAILS


For example, we may have 5 worksheet, we have to do some tasks in Sheet3. In order to perform some tasks we need to activate the worksheet then perform the tasks.

Activate Workbook Or Work Sheet – Example Cases:

Activate Workbook or Worksheet

If you know the name of the workbook You can use the following code to Activate Workbook or worksheet. For example workbook name is “Book2” which we want to activate and it contains sheet named as “Sheet1”. Using following code you can Activate Workbook Or Work Sheet.

Code:

Sub Activate_Workbook()
    
    'Activate Workbook
    Workbooks("Book2.xls").Activate   

    'Activate Worksheet
    Workbooks("Book2.xls").Sheets("Sheet1").Activate

End Sub

Output:

Activate Workbook Or Work Sheet

Instructions:
  1. Open an excel workbook
  2. Press Alt+F11 to open VBA Editor
  3. Insert a new module from Insert menu
  4. Copy the above code and Paste in the code window
  5. Press F5 to see the output
  6. You should see Aactivated workbook and Worksheet
  7. Save the file as macro enabled workbook
Activate Workbook or Worksheet using object

You can create object for workbook and worksheet in the following way.You can use object to activate Workbook or Worksheet.

Code:

Sub Activate_Workbook_Using_Object()
    
    'Variable Declaration
    Dim WrkBk As Workbook
    Dim WrkSht As Worksheet
    
    'Create Object for Workbook
    Set WrkBk = Workbooks.Add
    
    'Create Object for Worksheet
    Set WrkSht = WrkBk.Sheets("Sheet1")
    
    'Activate Sheet
    WrkSht.Activate

End Sub

Explanation:
  1. We declared two objects for workbook and worksheet
  2. We have added a new workbook and assigned to workbook object
  3. We set the Worksheet to worksheet object
  4. We activated the worksheet by refering the worksheet object
  5. .

Instructions:
  1. Open an excel workbook
  2. Press Alt+F11 to open VBA Editor
  3. Insert a new module from Insert menu
  4. Copy the above code and Paste in the code window
  5. Press F5 to see the output
  6. You should see output as shown above
  7. Save the file as macro enabled workbook
LIMITED TIME OFFER - Get it Now!
Advanced Project Plan Excel Template

 
Related Resource External VBA Reference
By |January 12th, 2013|Excel VBA|3 Comments

About the Author:

Excel VBA Developer having around 8 years of experience in using Excel and VBA for automating the daily tasks, reports generation and dashboards preparation. Valli is sharing to helps us automating daily tasks.

3 Comments

  1. Jude September 15, 2014 at 11:20 PM - Reply

    Hi,
    If you worksheet has a space in its name eg: ‘Sheet 1’, how would you reference that?
    (Workbooks(“Book2.xls”).Sheets(“Sheet1”).Activate)

  2. PNRao September 25, 2014 at 8:25 PM - Reply
    'You can use in same way:
    Workbooks(“Book2.xls”).Sheets("Sheet 1").Activate
    

    Thanks-PNRao!

  3. Ryan August 16, 2016 at 7:13 AM - Reply

    Hey Valli,

    I have just got a very simple question.

    My current macro pastes into a specific file Windows(“test file.xls”).Activate with this code. I would like to use this macro on various files with different names. Therefore I want it to paste onto my active worksheet, and am unsure of what code it should be .

    Please help!

    Regards

Leave A Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.