Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Finding Unused Names.
Written by Allen Wyatt (last updated March 30, 2019)
This tip applies to Excel 97, 2000, 2002, and 2003
Richard has a workbook that he's been using for a while, and it has quite a few names in it (named ranges, named formulas, etc.). He wonders if there is an easy way to find names that are not used at all, as he'd like to get rid of those names.
There is no built-in way to get rid of these unused names. You can, however, create a macro that will do the trick for you. This is most easily done by using the Find method to figure out which names have references that can be "found." If the reference cannot be found, then the name is not in use.
Sub RidOfNames()
Dim myName As Name
Dim fdMsg As String
On Error Resume Next
fdMsg = ""
For Each myName In Names
If Cells.Find(What:=myName.Name, _
After:=ActiveCell, _
LookIn:=xlFormulas, _
LookAt:=xlPart, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False, _
SearchFormat:=False).Activate = False Then
fdMsg = fdMsg & myName.Name & vbCr
ActiveWorkbook.Names(myName.Name).Delete
End If
Next myName
If fdMsg = "" Then
MsgBox "No unused names found in the workbook"
Else
MsgBox "Names Deleted:" & vbCr & fdMsg
End If
End Sub
The macro steps through all the elements of the Names collection and does a search for each name. If the name cannot be found, then the name is deleted. When the macro is completed, it displays a message box that lists the names that were removed from the workbook.
If you would rather not create your own macro, you can opt to use a free add-in by Jan Karel Pieterse. The add-in, called Name Manager, allows you to (guess what?) manage names better than you can do with native Excel. One of the functions it provides is the ability to get rid of names that are no longer needed. You can find the add-in here:
http://www.jkp-ads.com/OfficeMarketPlaceNM-EN.asp
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (3312) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Finding Unused Names.
Excel Smarts for Beginners! Featuring the friendly and trusted For Dummies style, this popular guide shows beginners how to get up and running with Excel while also helping more experienced users get comfortable with the newest features. Check out Excel 2019 For Dummies today!
Referring to a range of cells on the current worksheet is easy. But what if you want to refer to a range on a number of ...
Discover MoreNeed to edit the data within a cell? There are any number of ways you can perform the edit; this tip documents them all.
Discover MoreDo you need to know how many words are in a range of cells? Excel provides no intrinsic way to count the words, but you ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
2022-10-31 04:08:34
G
Seems to have work by me, having hundreds of irrelevant names from financial model consolidation. Thank you!!!
2020-07-23 11:35:14
Michel Goes
1. It must be noted that a named range can have the same name as a built-in Excel function. E.g. I can name my named range SUM i.e. exactly as the SUM function. So if a formula uses the SUM function but the SUM named range is not used anywhere in the worksheet/workbook, it is believed to be used while in fact it is not.
2. Another point is that a formula can contain a string literal which can potentially contain a string of characters matching the name of a defined named range. This also results this named range believed to be used while in fact it is potentially not.
2020-06-06 06:38:43
Willy Vanhaelen
THIS IS A VERY DANGEROUS MACRO. I tested it in a workbook with many names and it deleted most of them because they were only used in vba code. It also deleted one used in a conditional format formula.
2020-06-05 12:06:56
Marco
This macro doesn't seem to cope with names used in different sheets. It removed all names from my workbook, and a lot of things stopped working.
2019-05-17 09:56:17
Andrew
However, this macro would incorrectly delete named ranges which are only used on data validation formulae?
Please kindly clarify.
Andrew
Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments