構文
Range.Merge(Across)
Range.UnMerge
Across・・・True 行単位で結合する / False(規定値)指定範囲で結合する【省略可能】
Mergeでセルを結合、UnMergeでセルの結合解除をします。
セル結合は「Range.MergeCells プロパティ」でも可能ですが、本ページでは説明しません。
結合Mergeメソッド/結合解除UnMergeメソッドのコードサンプル
Public Sub test() '■セル「A1~B3」を結合する Range("A1:B3").Merge '■セル「A4~B6」を行単位で結合する Range("A4:B6").Merge (True) '→「A4~B4」「A5~B5」「A6~B6」の3つの結合セルが出来上がる '■下記のようなポップアップが出る場合は、Application.DisplayAlerts = Falseで表示させない 'セルを結合すると、左上の値のみが保持され、他のセルの値は破棄されます '選択範囲には複数のデータ値があります。1つのセルとして結合すると、 選択した範囲にある最も左上端にあるデータのみが保持されます(空白セルは無視されます)。 Application.DisplayAlerts = False Range("A7:B8").Merge Application.DisplayAlerts = True '■結合解除は、結合セルの範囲のどの位置でも解除される。(一番左上のセルを選択しなくても良い) Range("A1:B3").Merge Range("A1").UnMerge 'A1:B3の結合を解除 Range("A2").UnMerge 'A1:B3の結合を解除 Range("B3").UnMerge 'A1:B3の結合を解除 End Sub
注意点
- 結合セルというのは見た目だけは良いです。見た目だけです。
VBAで使う場合は注意しないと、意図しない不具合を誘発します。
結合セルの初期化(ClearContents)のエラーを回避する
セルの結合は厄介?結合で実行結果が異なる【エクセルマクロ】
コメント