- Home ›
- Excel VBA入門 ›
- セルを結合する ›
- HERE
結合されたセルの参照
広告
結合セルに対して新しい値を設定したり書式を変更する場合に、結合セルを表すRangeオブジェクトを取得する方法を確認します。
結合セルに対するRangeオブジェクトを取得するには、結合される前のセル領域に含まれるどこか1つのセルを表すRangeオブジェクトの「MergeArea」プロパティの値を取得します。
Dim range1 As Range Set range1 = Range("A1").MergeArea
上記の場合は、セルA1が含まれる結合セルを表すRangeオブジェクトを取得しています。「MergeArea」プロパティは必ず単一のセルに対して取得しなくてはいけません。
結合セルのRangeオブジェクトを取得したら、あとは通常のRangeオブジェクトに対する処理を行うことが出来ます。
サンプルプログラム
では簡単なサンプルで試してみましょう。まず下記のようなExcelファイルを用意します。
結合されたセルに対して値の設定と文字位置の変更をしてみます。
Sub テスト() Dim range1 As Range Set range1 = Range("C2").MergeArea range1.HorizontalAlignment = xlCenter Range("B3").MergeArea.Value = "A支店" Range("B6").MergeArea.Value = "B支店" End Sub
上記マクロを実行すると次のようになります。
( Written by Tatsuo Ikura )