Vba で union を使用する方法 (例付き)
VBA のUnionメソッドを使用すると、複数の範囲を 1 つに結合できます。
このメソッドを実際に使用する一般的な方法は次のとおりです。
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
この特定のマクロは、範囲A1:A10とC1:C10 を1 つの範囲に結合し、この結合された範囲内の各値に Excel の数式=RANDBETWEEN(1, 100)を割り当てます。これにより、1 ~ 100 のランダムな値が生成されます。
次の例は、VBA でUnionメソッドを実際に使用する方法を示しています。
例: VBA で Union を使用して範囲を結合する方法
VBA で次のマクロを定義し、Union メソッドを使用して範囲A1:A10とC1:C10を結合できます。
SubUseUnion ()
Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"))
UnionRange.Formula = "=RANDBETWEEN(1, 100)"
End Sub
このマクロを実行すると、次の出力が表示されます。
範囲A1:A10およびC1:C10の各セルには、1 から 100 までのランダムな整数を返す数式=RANDBETWEEN(1, 100)が含まれています。
また、 Unionメソッドには 3 つ以上の範囲を指定できることにも注意してください。
たとえば、 Unionメソッドを使用して 3 つの異なる範囲を結合し、各範囲のセルに数式を挿入する次のマクロを作成できます。
SubUseUnion () Set UnionRange = Application.Union(Range("A1:A10"), Range("C1:C10"), Range("D1:D5" )) UnionRange.Formula = "=RANDBETWEEN(1, 100)" End Sub
このマクロを実行すると、次の出力が表示されます。
1 つに結合した 3 つの範囲には、すべてRANDBETWEEN式が含まれています。
注: VBA Unionメソッドの完全なドキュメントはここにあります。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。