関数・メソッド

セルを結合/結合解除する【Mergeメソッド/UnMergeメソッド】【ExcelVBA】

構文

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


注意点

関連記事

「Ctrl+Shift+Q」で「セル結合・セル結合解除」をパーツ化する。【エクセルマクロ】

コメント

タイトルとURLをコピーしました