Unionメソッド解説(Excel VBA)

Excel VBA: Application.Union メソッドの活用

Excel VBAにおけるApplication.Unionメソッドは、異なる範囲のセルを結合する際に使用されます。これにより、複数の範囲を一つの範囲として操作することが可能になります。

構文

Application.Union(Range1, Range2, ..., Range30)

このメソッドは最大で30の範囲を一つに結合することができます。各引数は、結合したい範囲を指定します。

サンプルコード

以下に、Application.Unionメソッドの使用例を示します。


    Sub UnionExample()
        ' 範囲を定義
        Dim rng1 As Range
        Dim rng2 As Range
        Dim rng3 As Range

        ' 範囲を設定
        Set rng1 = Sheets("Sheet1").Range("A1:A5")
        Set rng2 = Sheets("Sheet1").Range("C1:C5")
        Set rng3 = Sheets("Sheet1").Range("E1:E5")

        ' 3つの範囲を結合
        Dim rngUnion As Range
        Set rngUnion = Application.Union(rng1, rng2, rng3)

        ' 結合した範囲の背景色を黄色に設定
        rngUnion.Interior.Color = RGB(255, 255, 0)
    End Sub
    

上記のコードでは、まず3つの範囲(A1:A5, C1:C5, E1:E5)を定義します。次に、これらの範囲をApplication.Unionメソッドで結合し、一つの範囲として扱います。最後に、結合した範囲全体の背景色を黄色に設定します。これにより、異なる列の特定のセル範囲に対して一括の操作を行うことが可能になります。

注意点

Application.Unionメソッドを使用する際には、全ての範囲が同じシートに存在する必要があります。異なるシートにまたがる範囲を結合しようとするとエラーが発生しますので、ご注意ください。