Excel VBA删除ExternalData_ *范围名称

时间:2013-11-21 14:39:01

标签: excel vba excel-vba

我有一些连接可以将数据从Internet抓取到我的Excel文件中。 每次将数据复制到文件时,我都会得到一个范围名称,如:

ExternalData_1
ExternalData_2
...

我在尝试使用以下命令删除这些范围名称:

Dim nName As Name 

For Each nName In ActiveWorkbook.Names 
   If nName.Name Like "ExternalData*" Then nName.Delete 
Next nName 

但这不是删除任何名字,为什么?

2 个答案:

答案 0 :(得分:3)

请改为尝试:

Sub test()
    Dim nName As Name

    For Each nName In ActiveWorkbook.Names
       If Left(nName.Name, 12) = "ExternalData" Then nName.Delete
    Next nName
End Sub

答案 1 :(得分:0)

名称可能以工作表名称开头,因此您可能必须像这样更改代码

If Left(nName.Name, 19) = "Sheet1!ExternalData" Then nName.Delete