VBA|批量刪除打開的工作簿中各工作表的名稱Name

在工作表中使用公式時,用名稱Name來引用單元格區域,有時是一種很直觀、方便的做法。但有利有弊,在工作簿間移動或複製工作表時,如果有相同的名稱Name,則會提示一個個更改名稱,很煩人。

VBA|批量刪除打開的工作簿中各工作表的名稱Name

如果一個個去刪除,也很煩瑣。如果自己在公式中基本不使用名稱,而可能因為各種原因在工作表中殘留了很多的Name,可以使用VBA一次性全部清除:

<code>Sub NameDel()   ' 刪除打開的工作簿所有工作表的名稱Name
' Name是一個單元格區域的命名,公式→定義的名稱
' 在工作簿間移動或複製工作表時,如果有相同的名稱,則會提示更改名稱
Dim i As Integer, j As Integer
Dim n As Integer, wbs As Integer

wbs = Workbooks.Count
For i = 1 To wbs
n = Workbooks(i).Names.Count()
For j = n To 1 Step -1 ' 因為按序列號刪除後不復存在,可用倒序操作
Workbooks(i).Names(j).Delete
Debug.Print (n)
Next
Next
End Sub/<code>

-End-


分享到:


相關文章: