サイトについて      連絡先   検索

VBA セルの結合を解除する

はじめに

Excel VBA のセルの結合を解除する方法を紹介します。

Range.MergeCells プロパティでセルの結合を解除できます。

MergeCells でセルが結合されているか判定もできます。

セルの結合を解除する

Range の引数にセル名を指定すると、そのセルの結合を解除できます。

セル「A1」~「B2」の結合を解除するには Range("A1").MergeCells = False のように指定します。

Range("A1").MergeCells = False ' セル「A1」が結合されていたら解除する
1

セルが結合されているか判定する

Range.MergeCells が True を返すとそのセルは結合されています。

If ActiveCell.MergeCells = True Then
    Debug.Print("結合されています。")
Else
    Debug.Print("通常のセルです。")
End If

指定したシートのセルを結合する

Range.MergeCells とコードに書くと、アクティブなシートのセルの結合を解除します。これは ActiveSheet.Range.MergeCells の ActiveSheet が省略されています。

' どちらも同じコード
Range("A1").MergeCells = False
ActiveSheet.Range("A1").MergeCells = False

シートを指定するには Sheets の引数にシート名またはインデックスを指定します。

1

Sheet1 のシートを指定するには、Sheets("Sheet1") か Sheets(1) と書きます。

' Sheet1 のセル「A1」の結合を解除
Sheets("Sheet1").Range("A1").MergeCells = False
Sheets(1).Range("A1").MergeCells = False

' Sheet2 のセル「A1」の結合を解除
Sheets("Sheet2").Range("A1").MergeCells = False
Sheets(2).Range("A1").MergeCells = False

関連ページ