更新Excel中的命名区域(以及所有对它的引用)?

我在所有的范围名称中使用了一个句点(。),这对于excel来说很好,但是当我尝试导出到Google电子表格时,却不好。

是否有一个简单的方法来更新我所有的范围名称(用_replace)? 复制和replace只处理引用而不是名称本身。

或者,在这种情况下,另一种解决scheme是将名称引用replace为正常的表格位置(C5等),与名称相反。 有一个快速的方法来做到这一点?

VBA将在这种情况下有所帮助。 请执行以下操作:

  1. 打开你有问题的工作簿
  2. 通过在Excel应用程序中按Alt + F11来转到VBA编辑器/ IDE
  3. 在IDE >>菜单>>插入>>模块
  4. 在代码窗口(最大的一个)添加如下代码:

    Sub qReplace() Dim myName As Name For Each myName In ActiveWorkbook.Names myName.Name = Replace(myName.Name, ".", "_") Next End Sub 
  5. 在里面点击并按F5

应该工作,我尝试和testing。

我推荐Jan Karel Pieterse的名字pipe理器插件。 它是Excel开发工具中的一个,并且更具体地满足您的需求,它具有重命名function,可以在整个工作簿和代码中更新引用。

当然,在做这样的事情之前一定要备份你的工作。