Areas 集合

         
Range
Areas
Range

选定区域内的子区域或连续单元格块的集合。没有单个的 Area 对象;Areas 集合的单个成员是 Range 对象。Areas 集合包含选定区域内的每一个离散的连续单元格区域的 Range 对象。如果选定区域仅包含一个子区域,那么 Areas 集合就包含对应于该选定区域的单个 Range 对象。

Areas 集合用法

可用 Areas 属性返回 Areas 集合。下例中,如果当前选定区域包含若干子区域,就清除该选定区域。

If Selection.Areas.Count <> 1 Then Selection.Clear

可用 Areas(index)(其中 index 为区域索引号)从集合中返回单个 Range 对象。该索引号对应选定这些区域的顺序。下例中,如果当前选定区域包含若干子区域,就清除该选定区域中的第一个子区域。

If Selection.Areas.Count <> 1 Then
    Selection.Areas(1).Clear
End If

某些操作不能在选定区域内的多个子区域上同时执行;必须在选定区域内的单个子区域上循环,对每个单独的子区域分别执行该操作。下例中,如果选定区域仅包含一个子区域,就对该选定区域执行名为“myOperation”的操作;而如果选定区域包含多个子区域,下例将对选定区域内每个单独的子区域分别执行这一操作。

Set rangeToUse = Selection
If rangeToUse.Areas.Count = 1 Then
    myOperation rangeToUse
Else
    For Each singleArea in rangeToUse.Areas
        myOperation singleArea
    Next
End If