excel - 在名称管理器中搜索名称并设置值

标签 excel vba

我有很多命名范围。他们都像 MFiles_PG9317B4DE414D4DE3A781648B8F8B5C2Fn1_ID .它们的共同点是它们都以 MFiles_ 开头。 .有时我需要将它们的值设置为 "" .单击每个并手动设置值是一项工作。我想通过代码来实现。我想我必须遍历所有这些,搜索以 MFiles_ 开头的名称并将它们的值设置为 "" .怎么做?

笔记!命名范围应保持原样,只有值应设置为 "" .所以MFiles_PG9317B4DE414D4DE3A781648B8F8B5C2Fn1_ID带值(例如)=78324代码运行后应该是""但名称应保持不变MFiles_PG9317B4DE414D4DE3A781648B8F8B5C2Fn1_ID .还有所有其他人在乞求 MFiles_

Sub NamedRange_Loop()

Dim nm As Name

'Loop through each named range in workbook
  For Each nm In ThisWorkbook.Names
    If nm = MFiles_ Then
       Name.Value =""
    End If
  Next nm

End Sub

编辑:

Mikku 的解决方案给出:
enter image description here

最佳答案

很接近 :)

Sub NamedRange_Loop()

Dim nm As Name

'Loop through each named range in workbook
  For Each nm In ThisWorkbook.Names
    If InStr(1, nm.Name, "MFiles_") Then
       nm.RefersTo = "=""""" 'nm.Value = "=""""" does the same thing
    End If
  Next nm

End Sub

关于excel - 在名称管理器中搜索名称并设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57176304/

相关文章:

vba - 为什么在下面的VBA代码中使用Object类型而不是Sheet类型来声明变量?

Excel VBA 检查目录是否存在错误

com - 使用 Powershell 将 Excel 工作表从一个工作簿复制到另一个工作簿

excel - 为 Microsoft Excel 加载项分配键盘快捷键

html - 从文件名更改的网站下载 Excel 文件

excel - Excel 中的立方值

c# - 在 C# 中刷新 Excel 工作表

vba - 使用 VBA 计算行数和筛选,然后删除筛选的行

excel - 为什么 "bCheck"总是返回 "True"?

vba - 相对文件引用