2010-09-20 36 views
0

•我有两个模板工作表(在Excell 2010中)称为“DefaultDesign”和“DefaultDesignMaterials”,其中包含许多具有工作簿范围的单元名称。例如,范围名称与工作组作用域称为“DefaultDesign_NumberOfServers”。我想复制这两个模板,并将它们重命名为“Design1”和“Design1Materials”,然后将单元名称(或范围)“DefaultDesign_NumberOfServers”重命名为“Design1_NumberOfServers”和“DefaultDesign_OS”以“Design1_OS”等。 ...所有工作组范围。 有太多的单元名称和单元范围名称需要手动重命名。如何重命名系列或范围名称并使其作用域为全局

回答

0

您可以通过活动工作簿的名称列表循环得到每个命名范围的保持,并将其重命名 - 例如

Sub RangeRename() 
Dim N As Name 

    For Each N In ActiveWorkbook.Names 
     N.Name = N.Name & "_New" ' or any other transformation 
    Next N 
End Sub 

对于字符串操作 - 如果你的名字始终包含“_”为文件名和范围名称之间的分隔符,您可以使用此转换:

N.Name = ActiveWorkbook.Name & "_" & Mid(N.Name, InStr(1, N.Name, "_") + 1, 99) 

希望有所帮助。你好运 - MikeD

相关问题