我如何使用嵌套范围?

时间:2015-02-01 11:58:19

标签: excel vba nested

我在Excel中将多行命名为Chapter_9,并从那些将多行命名为Chapter_9_1的行中。 我想要遍历所有Chapter_9行,当我识别属于Chapter_9_1的行以执行其他操作时。 欢迎任何帮助。 感谢。

1 个答案:

答案 0 :(得分:0)

我不知道你为什么选择这种方法,但这里有一些东西。

这是基于Range.Intersect函数 - 它返回两个范围的公共范围。在您的情况下,范围Chapter_9Chapter_9_1的交集将返回范围,在其他情况下,它将返回nothing

这是我的代码

Sub Main()
    Dim rngChapters As Range
    Dim rngChapter1 As Range
    Dim rngChapter2 As Range
    Dim rngChapter3 As Range
    Dim rngIntersect As Range
    Dim cell As Range

    ' A1:A15
    Set rngChapters = Range("Chapters")

    ' A1:A5
    Set rngChapter1 = Range("Chapter1")

    ' A6:A10
    Set rngChapter2 = Range("Chapter2")

    ' A11:A15
    Set rngChapter3 = Range("Chapter3")

    Set rngIntersect = Intersect(rngChapters, rngChapter2)

    ' Testing if the ranges intersect
    If rngIntersect Is Nothing Then
        Debug.Print "empty"
    Else
        For Each cell In rngIntersect
            Debug.Print cell.Address
        Next cell
    End If
End Sub