HOME > 即効テクニック > Excel VBA > セル操作関連のテクニック > 複数のセルを併せて参照する(Unionメソッド)

複数のセルを併せて参照する(Unionメソッド)|Excel VBA

セル操作関連のテクニック

複数のセルを併せて参照する(Unionメソッド)

(Excel 2000/2002/2003/2007/2010/2013/2016)

複数のセル範囲を集合させ、1つのオブジェクトのように参照することができます。
既存のセル範囲に新しいセル範囲を追加して、併せて参照したい場合に便利です。

複数のセル範囲はRangeプロパティを使って

Range("A1,B2,C3").Select

のように指定することもできますが、Rangeプロパティの引数に指定する文字列には文字数制限があるので、セルやセル範囲の数が多い場合にもUnionメソッドを使うと良いでしょう。

構文 Object.Union(Arg1, Arg2, ...)

設定項目内容
ObjectApplicationオブジェクト [省略可能]

●サンプル●

Sub UnionSamp1()
    Dim i As Long
    Dim myRange As Range

    'セルC1をmyRangeに格納
    Set myRange = Cells(1, 3)
    
    '3行目から2行間隔で9行目までループ
    For i = 3 To 9 Step 2
        Set myRange = Union(myRange, Cells(i, 3)) '---(1)
    Next i
    
    'myRangeを選択
    myRange.Select
End Sub

●解説●

サンプルの結果を見てください。サンプルでは1行目から9行目まで、1行おきにC列のセルを選択しています。選択されたセルがUnionメソッドで返されたセルの集合です。(1)のステートメントで既存のセル範囲であるmyRangeに新しいセル範囲を追加し、そのセル範囲の集合を新しくmyRangeに格納しています。