Pinterest Pixel

Create a Table of Contents Using Macros In Excel

Bryan
This is one of the most fun and coolest macros that you can use.
If you have a lot of worksheets, it is very annoying to scroll left to right to find out what other worksheets you have.

We can use Excel Macros to create a table of contents for easy navigation!  In this article, you will learn how to create a table of contents using macros in Excel.

This is one of the most fun and coolest macros that you can use. If you have a lot of worksheets, it is very annoying to scroll left to right to find out what other worksheets you have. We can use Excel Macros to create a table of contents for easy navigation!  In this article, you will learn how to create a table of contents using macros in Excel.

Key Takeaways

  • A Table of Contents lets you quickly navigate between worksheets.
  • A VBA macro automatically creates clickable links for every sheet.
  • The macro saves time in workbooks with many worksheets.
  • Run the macro again to update the list after adding or removing sheets.
  • You can customize the Table of Contents with formatting and additional features.

 

What Is a Table of Contents in Excel?

A Table of Contents is a worksheet that lists all the sheets in your workbook. Each sheet name is displayed as a clickable hyperlink, allowing you to navigate directly to that worksheet.

You can simply click on the required sheet instead of searching through the sheet tabs manually.

Quick Overview

What does it do?

Creates a table of contents for all of the worksheets

Copy Source Code:


Sub CreateTableOfContents()

Dim counter As Long

On Error Resume Next
Application.DisplayAlerts = False
'If this worksheet already exists, let us redo this
Worksheets("Table of Contents").Delete
Application.DisplayAlerts = True
On Error GoTo 0

'Let us add a new worksheet as our Table of Contents
ThisWorkbook.Sheets.Add Before:=ThisWorkbook.Worksheets(1)
ActiveSheet.Name = "Table of Contents"

'Let us enumerate all of the worksheets in our ToC
For counter = 1 To Sheets.Count
'This will add one hyperlink for the specific sheet
ActiveSheet.Hyperlinks.Add _
Anchor:=ActiveSheet.Cells(counter, 1), _
Address:="", _
SubAddress:="'" & Sheets(counter).Name & "'!A1", _
ScreenTip:=Sheets(counter).Name, _
TextToDisplay:=Sheets(counter).Name

Next counter

End Sub

Final Result: 

Create a Table of Contents Using Macros In Excel

How to Create a Table of Contents Using Macros In Excel

This is our list of worksheets:

Create a Table of Contents Using Macros In Excel

STEP 1: Go to Developer > Code > Visual Basic

 

STEP 2: Paste in your code and Select Save. Close the window afterwards.

Create a Table of Contents Using Macros In Excel

 

STEP 3: Let us test it out!

Open the sheet. Go to Developer > Code > Macros

 

Make sure your macro is selected. Click Run.

Create a Table of Contents Using Macros In Excel

 

With just one click, a new worksheet “Table of Contents” was created!Create a Table of Contents Using Macros In Excel

Try clicking the Americas link, and it takes you straight to the Americas worksheet!

Create a Table of Contents Using Macros In Excel

 

Tips & Tricks

  • Save the workbook as an .xlsm file so your macro isn’t removed.
  • If macros are disabled, enable them before running the code.
  • The macro recreates the Table of Contents each time it runs, so any manual edits to that sheet may be overwritten.
  • You can customize the macro to exclude hidden worksheets or sort worksheet names alphabetically.

 

Frequently Asked Questions

Why use a macro to create a Table of Contents in Excel?
It saves time by automatically listing and linking all worksheets in a workbook, especially helpful for large files.

Can the macro include only visible sheets?
Yes, the macro can be written to skip hidden sheets and include only those visible to the user.

Where does the Table of Contents appear?
The macro creates a new sheet named “TOC” or “Index” at the beginning of the workbook.

Can I add a refresh button to update the TOC?
Yes, a button can be added to rerun the macro and update the list when new sheets are added.

Is it possible to format the TOC for better readability?
Absolutely. Macros can apply bold headers, add colors, and sort sheet names alphabetically for a polished look.

If you like this Excel tip, please share it




Bryan

Bryan Hong is an IT Software Developer for more than 10 years and has the following certifications: Microsoft Certified Professional Developer (MCPD): Web Developer, Microsoft Certified Technology Specialist (MCTS): Windows Applications, Microsoft Certified Systems Engineer (MCSE) and Microsoft Certified Systems Administrator (MCSA).

He is also an Amazon #1 bestselling author of 4 Microsoft Excel books and a teacher of Microsoft Excel & Office at the MyExecelOnline Academy Online Course.

See also  Use Calculator By Using Macros In Excel

Steps To Follow

Star 30 Days - Full Access Star

One Dollar Trial

$1 Trial for 30 days!

Access for $1

Cancel Anytime

One Dollar Trial
  • Get FULL ACCESS to all our Excel & Office courses, bonuses, and support for just USD $1 today! Enjoy 30 days of learning and expert help.
  • You can CANCEL ANYTIME — no strings attached! Even if it’s on day 29, you won’t be charged again.
  • You'll get to keep all our downloadable Excel E-Books, Workbooks, Templates, and Cheat Sheets - yours to enjoy FOREVER!
  • Practice Workbooks
  • Certificates of Completion
  • 5 Amazing Bonuses
Satisfaction Guaranteed
Accepted paymend methods
Secure checkout

Get Video Training

Advance your Microsoft Excel & Office Skills with the MyExcelOnline Academy!

Dramatically Reduce Repetition, Stress, and Overtime!
Exponentially Increase Your Chances of a Promotion, Pay Raise or New Job!

Learn in as little as 5 minutes a day or on your schedule.

Learn More!

Share to...