VBA Excel选择以字符开头的命名范围

时间:2013-08-29 14:43:08

标签: excel-vba vba excel

我对命名范围有一点问题。

我在不同的工作表上有多个命名范围。我想隐藏用vba显示所有这些范围。命名范围的示例:r1_name1。另一张纸上的第二张是r1_name2。所以所有范围都以前面的相同代码开头:r1_。

如何循环遍历以r1_开头的所有范围并隐藏/显示它们?

1 个答案:

答案 0 :(得分:1)

循环遍历命名范围:

Sub tgr()

    Dim NamedRange As Name

    For Each NamedRange In ActiveWorkbook.Names
        If LCase(Left(NamedRange.Name, 3)) = "r1_" Then
            MsgBox NamedRange.Name & Chr(10) & _
                   Range(NamedRange.RefersTo).Address(External:=True)
        End If
    Next NamedRange

End Sub

隐藏/取消隐藏它们:

Range(NamedRange.RefersTo).EntireRow.Hidden = True 'or False