教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA セル操作】選択した範囲のセルを結合(MergeCells)する方法を教えて!

構文

構文は以下の通りです。

Range("結合する範囲").MergeCells = True / False

解説

MergeCellsプロパティは、指定した範囲のセルを結合するための命令です。結合することで、複数のセルを一つの大きなセルとして扱うことができます。結合する範囲には、結合したいセルの範囲を指定します。例えば、A1からB2までのセルを結合したい場合は、"A1:B2"と指定します。

使い方

例えば、A1からB2までのセルを結合したい場合は、以下のように記述します。

Sub MergeCellsExample()
    Range("A1:B2").MergeCells = True
End Sub

プログラミング例

以下に、具体的なプログラミング例を幾つか紹介します。

例1: 表の見出しを結合する

以下の例では、表の見出し行を結合する操作が行われます。

Sub MergeHeader()
    Range("A1:D1").MergeCells = True
End Sub

この例では、A1からD1までのセルを結合し、見出し行を一つのセルとして扱います。必要に応じてセルの範囲を変更してください。

例2: セルの値を結合して表示する

以下の例では、セルの値を結合して別のセルに表示する操作が行われます。

Sub MergeValues()
    Range("A1:B1").MergeCells = True
    Range("A1").Value = "合計"
End Sub

この例では、A1からB1までのセルを結合し、「合計」という値を表示します。結合したセルの先頭に値を代入することで、結合したセル全体に値が表示されます。

例3: セルの結合を解除する

以下の例では、セルの結合を解除する操作が行われます。

Sub UnmergeCells()
    Range("A1:B2").MergeCells = False
End Sub

この例では、A1からB2までの範囲のセルの結合を解除します。セルの結合を解除するには、MergeCellsプロパティをFalseに設定します。

まとめ

MergeCellsプロパティを使うことで、セルの結合が簡単に行えます。見出しや合計値を結合したセルに配置したり、セルの幅を調整することで、情報を整理しやすくなります。是非活用してください。