2
我運行了一個宏以活動工作簿,並將其複製片到一個新的工作簿,然後嘗試在保存之前刪除的命名範圍。刪除我曾嘗試命名區域的所有迭代已經失敗,相同的錯誤:刪除命名範圍
這裏是我試過的代碼,這是最常用的推薦代碼:我能找到的:
Dim nName As Name
For Each nName In Application.ActiveWorkbook.Names
nName.Delete
Next
我運行了一個宏以活動工作簿,並將其複製片到一個新的工作簿,然後嘗試在保存之前刪除的命名範圍。刪除我曾嘗試命名區域的所有迭代已經失敗,相同的錯誤:刪除命名範圍
這裏是我試過的代碼,這是最常用的推薦代碼:我能找到的:
Dim nName As Name
For Each nName In Application.ActiveWorkbook.Names
nName.Delete
Next
Too long for a comment; I will delete if this does not resolve the situation.
當您在工作簿中創建定義的名稱時,您可能無意中使用了保留字或重複形狀或其他對象的名稱。以下可能有助於通過其索引識別定義的名稱,而不是對象本身。
do while cbool(activeWorkbook.names.count)
activeWorkbook.Names(1).Delete
loop
我認爲,無論是Workbook.Names collection的.Count
和指數是基於1的。
這段代碼對我來說非常合適,不管這個名字的作用域是否爲Workbook或Worksheet。此代碼中的哪一行會引發錯誤?這段代碼中的任何內容都不應該引起這個錯誤,是否有更多的代碼在別處失敗? –
這是超級類似的 - 但沒有[這個代碼]做的伎倆?它忽略了錯誤,我想你也可以在你的子文件中做這些錯誤。此外,[這個答案](http://stackoverflow.com/a/25394013/4650297)提供任何見解?另外,你確定* ActiveWorkbook是你期望的那個? – BruceWayne
我只是複製並將代碼粘貼到一個空白子文件中,並從名稱管理器中刪除所有名稱。你有沒有試過用F8編碼? – Tyeler