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.
Program Successfully in Excel! This guide will provide you with all the information you need to automate any task in Excel and save time and effort. Learn how to extend Excel's functionality with VBA to create solutions not possible with the standard features. Includes latest information for Excel 2024 and Microsoft 365. Check out Mastering Excel VBA Programming today!
Insert a symbol into a cell, and it should stay there, right? What if the symbol changes to another character, such as a ...
Discover MoreWant to establish a "bottom limit" on what dates can be entered in a cell? This tip presents two different ways you can ...
Discover MoreWhen you copy and paste a formula, you usually want to see the formula where you pasted. If you don't get the formula, ...
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