【Excel VBA】セルの結合を解除する基本コードとやさしい解説

VBA & Excel
スポンサーリンク
スポンサーリンク

はじめに

Excelで作業をしていると、
「結合されているセルを元に戻したい」
「レイアウトを整えるために結合を解除したい」
そんな場面がよくあります。

セル結合は便利ですが、実務では扱いに注意が必要な機能でもあります。
ここでは、セルの結合を解除する基本のコードと、安全に扱うための考え方を解説します。

まずはコードを確認

Range("A1:B1").UnMerge

もっともシンプルな書き方です。
A1 と B1 の結合を解除し、元の2セルに戻します。

コードのしくみを解説

UnMerge で結合を解除する

UnMerge は、指定した範囲の結合を解除するメソッドです。

  • 結合前のセル数に戻る
  • 値は左上セルに残る(重要)

例:

Range("A1:C1").UnMerge

A1 に値が残り、B1 と C1 は空白になります。

結合解除後に値を整える例

結合解除後、すべてのセルに同じ値を入れる

Dim v As Variant
v = Range("A1").Value

Range("A1:C1").UnMerge
Range("A1:C1").Value = v

見出しを複数セルに均等に表示したいときに使います。

結合セルを含む範囲を一括で解除する

Range("A1:D10").UnMerge

範囲内に結合セルがあれば、すべて解除されます。

シート全体の結合を解除する

Cells.UnMerge

レイアウトをリセットしたいときに便利です。

結合解除の注意点(実務で特に大切)

  • 結合解除後は値が左上セルにしか残らない
    → 必要なら事前に値を退避しておくと安心です。
  • 結合セルは並べ替え・フィルタと相性が悪い
    → 結合解除すると、データ操作が安定します。
  • 結合解除後は列幅や行高さが変わることがある
    → レイアウト調整が必要な場合があります。

応用:結合セルを探して解除する

Dim c As Range
For Each c In Range("A1:D20")
If c.MergeCells Then
c.UnMerge
End If
Next c

結合セルが点在している表で役立ちます。

まとめ

  • UnMerge でセルの結合を解除できる
  • 値は左上セルに残るため、必要なら退避しておく
  • 範囲指定やシート全体の解除も可能
  • 結合解除は、並べ替えやフィルタを安定させるためにも有効

セルの結合解除は、表を整えるための静かな一手です。
VBAで扱えるようになると、レイアウト調整がぐっと楽になります。


decopon
decopon

セルの結合を解除する処理は、表を整えるための大切なステップです。
結合の影響を理解しておくことで、実務でのトラブルを防ぎ、安心して作業できます。

moco
moco

ひとつにまとまっていたセルを、そっと元の形に戻すよ。
VBAは、そんな細やかな整えごとも得意なんだね。

コメント

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