Using a Cell Value as a Worksheet Name in a Formula

by Allen Wyatt
(last updated October 4, 2019)

2

Roy has a formula that references a cell in another workbook, as ='[Timesheets.xlsm]Week01'!L6. He would like to have the formula pick up the name of the worksheet (Week01) from another cell, so that the formula becomes more general-purpose. Roy wonders how he should change the formula so it can use whatever worksheet name is in cell B9.

The easiest way to handle this is to use the INDIRECT worksheet function. Essentially, it takes a cell address and uses it as a "pointer" and then retrieves the value from that cell. For instance, you could use the following:

=INDIRECT(L6)

This results in the value in cell L6 being fetched and used as the pointer to what you really want. Thus, if cell L6 contains "A7", then the function returns the value of whatever is in cell A7. Interestingly, if you invoke the function in this way you get a different result:

=INDIRECT("L6")

The result is the contents of cell L6 instead of using the contents of cell L6 as a pointer.

With this information, you could easily put together an address that will work properly with the INDIRECT function:

=INDIRECT("'[Timesheets.xlsm]" & K2 & "'!L6")

This formula assumes that the name of the desired worksheet is stored in cell K2. If a valid worksheet name is not in that cell the formula returns a #REF error.

One important "gotcha" with this approach is that you've got to make sure that the workbook (Timesheets.xlsm) is open. INDIRECT won't reach into an unopen workbook. If it is not open, then you'll get a #REF error instead of the desired value.

If you want to make the formula even more general-purpose, you could pull the workbook name, worksheet name, and cell referene all from cells within your worksheet, as in this manner:

=INDIRECT("'[" & K1 & "]" & K2 & "'!" & K3)

In this instance, K1 would contain the workbook name (Timesheets.xlsm), K2 would contain the worksheet name ("Week01"), and K3 would contain the cell desired ("L6").

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (6069) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and Excel in Office 365.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Adjusting Values with Formulas

Paste Special is a great tool that allows you to modify the values in a range of cells in your worksheets. You may want, ...

Discover More

Telling which Worksheets are Selected

If your macro processes information on a number of worksheets, chances are good that you need your macro to figure out ...

Discover More

Self-Deleting Macros

Macros are very powerful, but you may not want them to always be available to a user. Here are some ways you can limit ...

Discover More

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!

More ExcelTips (ribbon)

Determining Columns in a Range

If you need to know the number of columns in a particular range, you can use the COLUMNS worksheet function. This tip ...

Discover More

Modifying Proper Capitalization

The PROPER worksheet function is used to change the case of text so that the first letter of each word is capitalized. If ...

Discover More

Converting Radians to Degrees

When applying trigonometry to the values in a worksheet, you may need to convert radians to degrees. This is done by ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is five more than 5?

2019-04-09 06:22:51

Radek

Dear Allen

Your tips help me save a lot of time.
I couldn't find what I need, and here I finally got it.

Is short cut, I was trying made lookup function in different sheet based on the given name of a sheet, but the sheet name was a value of a cell.
I was trying to avoid VBA and, thanks to your tips and my clever idea now it works perfectly.

One more time thank you, and best getting form Poland


2018-05-18 05:55:23

John

Hi Allen,

I am trying to get this formula to work. Please can you help me review it:

=VLOOKUP(C7,("'[" & C6 & "]" & D6 & "'!" & C7:D11),2,FALSE)

I want to lookup another Workbook.

Regards,

John


This Site

Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.