Excel.Tips.Net Welcome toExcel.Tips.Net

Helpful Links

Tips.Net Home
ExcelTips Home
Ask an Excel Question
Make a Comment

Tips.Net Store

ExcelTips FAQ
ExcelTips Premium

Learn Access Now
Free Printable Forms

Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Legal Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Wedding Tips
Word2007 Tips
WordTips

Advertise on the
ExcelTips Site

Newest Tips

Recording a Macro

Adding a Little Animation to Your Life

Converting a Range of URLs to Hyperlinks

Making the Formula Bar Persistent

Engineering Calculations

Digital Signatures for Macros

Fixing the Decimal Point

 

Deriving the Worksheet Name

Summary: Using a macro to reference the worksheet tab name in a worksheet cell in Excel. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, and Excel 2003.)

There may be instances when you are developing a worksheet and you need to reference the name that you have assigned to the worksheet. (This is the name that appears on the worksheet tab, at the bottom of the Excel window.) Unfortunately, Excel does not include any intrinsic functions to do this. You can create such a function, however, by starting with the use of the CELL worksheet function.

If you include the following in a cell, Excel returns the full path of the workbook, along with the sheet name:

=CELL("filename")

For instance, if you entered this into a cell in the Sheet3 worksheet of the MyBook workbook, the information returned by Excel might be something like C:\My Documents\[MyBook.xls]Sheet3 (depending, of course, on the drive and directory in which the workbook is saved).

To return just the worksheet name from this value, you could use the following in your cell:

=MID(CELL("filename"),(FIND("]",CELL("filename"))+1),50)

This will work for any worksheet name up to 50 characters in length. (If you routinely use different lengths, simply change the value in the expression.)

If you would prefer to use a macro-oriented approach, you can create a full-featured macro that will do the job. The following macro, SheetStuff, will return any of three separate items:

Function SheetStuff(numWanted As Byte) As String
Select Case numWanted
   Case 1
      SheetStuff = ActiveSheet.Name
   Case 2
      SheetStuff = ThisWorkbook.Name
   Case 3
      SheetStuff = ThisWorkbook.FullName
   Case Else
      SheetStuff = ActiveSheet.Name
End Select
End Function

To use this macro function, simply put =SheetStuff(X) in a cell in your worksheet. You should replace X with either 1, 2, or 3, depending on the information you want. If you use 1, the name of the current worksheet is returned. If you use 2, then the name of the workbook is returned. Finally, 3 returns the name and full path of the workbook.

ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2019) applies to Microsoft Excel versions: 97 | 2000 | 2002 | 2003

Make Home Buying Less Stressful! Why make home buying harder than it needs to be? Put your mind at ease—discover all the questions you need to ask to make the best buying decision.
 
Check out Buying a Home Checklist today!