セルの結合

Excel VBA を使って指定したセル範囲を結合する方法を解説します。セル範囲は長方形の領域である必要があります。結合されたセルには結合する領域の左上にあるセルの値が表示されます。それ以外のセルに含まれていた値は全て削除されます。

(2022 年 06 月 14 日公開 / 2022 年 06 月 14 日更新)

セルを結合する

セルを結合するには、結合するセル範囲を表すRangeオブジェクトの「MergeCells」プロパティに「True」を設定します。

Dim range1 As Range

Set range1 = Range("A1:C3")
range1.MergeCells = True

まとめて次のように記述しても構いません。

Range("A1:C3").MergeCells = True

サンプルプログラム

では簡単なサンプルで試してみましょう。まず下記のようなExcelファイルを用意します。

セルを結合する

セル範囲B2:D2を結合してみます。

Sub テスト()

    Dim range1 As Range
    
    Set range1 = Range("B2:D2")
    range1.MergeCells = True
    
End Sub

上記マクロを実行すると次のようになります。

セルを結合する

セルが結合されます。結合されたセルには、結合前の左上にあったセルB2の値が表示されています。

セルが結合される時に、左上以外のセルに値が入っている場合は次のような警告ウィンドウが表示されます。(先ほどのサンプルでも表示されました)。

セルを結合する

警告ウィンドウが表示されるといったんプログラムの流れが切れます。もし警告ウィンドウを表示したくない場合にはApplicationオブジェクトの「DisplayAlerts」プロパティで設定を行います。詳しくは「メッセージウィンドウの非表示」を参照して下さい。

-- --

Excel VBA を使って指定したセル範囲を結合する方法を解説しました。

( Written by Tatsuo Ikura )

広告
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。