Excelのセル結合をやめて「選択範囲内で中央」にする方法
見出しを中央にそろえたくて「セルを結合して中央揃え」を使うと、あとで並べ替えやコピーができなくなります。結合しなくても、見た目はまったく同じにできます。
更新日:2026年10月28日
1. セル結合で困ること
- 並べ替え:「この操作には、結合したセルをすべて同じサイズにする必要があります」と出て止まります
- コピー・貼り付け:結合の形が違う場所には貼り付けられません
- 列の選択:1列だけ選びたいのに、結合している列までまとめて選ばれます
- フィルター・集計:結合セルの値は左上のセルにしか入っていないので、ほかの行が空白として扱われます
見出しを中央にそろえたいだけなら、結合する必要はありません。
2. 結合の代わりに「選択範囲内で中央」
- 中央にそろえたい範囲(例:B1:E1)を選びます。文字は左端のセル(B1)に入れておきます。
- Ctrl+1 で「セルの書式設定」を開きます。
- 「配置」タブの「横位置」で「選択範囲内で中央」を選んで OK を押します。
見た目は結合したときと同じですが、セルは1つずつのままです。並べ替えも、列の選択も、ふつうにできます。
ポイント:「選択範囲内で中央」は横方向だけです。縦に結合していたところは、上のセルに値を入れて罫線で囲むか、行の高さで調整します。
3. 「セルのスタイル」にして、いつでも1クリックで
毎回 Ctrl+1 を開くのは手間です。スタイルとして登録しておけば、ほかの書式と同じように1クリックで付けられます。
- 「選択範囲内で中央」を設定したセルを1つ選びます。
- 「ホーム」タブ→「セルのスタイル」→「新しいセルのスタイル」を選びます。
- スタイル名に「見出し_中央」などと入れ、「配置」だけにチェックを残してほかのチェックを外し、OK を押します。
これで「セルのスタイル」の一覧の一番上(ユーザー設定)に表示されます。範囲を選んでクリックするだけで、配置だけが変わります(フォントや色はそのまま)。
ポイント:スタイルはブックごとに保存されます。チームで使うテンプレートに入れておくと、全員が同じやり方になります。ほかのブックへは、「セルのスタイル」→「スタイルの結合」で取り込めます。
4. 結合されたセルを探す
- Ctrl+F で「検索と置換」を開き、「オプション」を押します。
- 「検索する文字列」は空のまま、右の「書式」を押します。
- 「配置」タブで「セルを結合する」にだけチェックを入れて OK を押します。
- 「検索場所」を「ブック」にして「すべて検索」を押すと、結合セルが一覧で表示されます。
5. 手でまとめて解除する
- シート全体を選び(Ctrl+A)、「ホーム」タブ→「セルを結合して中央揃え」の▼→「セル結合の解除」を選びます。
- 見出しだったところを選び直して、上の「見出し_中央」スタイルを付けます。
解除すると、値は左上のセルにだけ残ります。表の中の結合(同じ値が縦に続いていたところ)を解除したときは、空いたセルを埋めておくと並べ替えや集計で困りません。
- 表の範囲を選び、Ctrl+G→「セル選択」→「空白セル」で OK を押します。
- そのまま = を押し、↑ を押して(1つ上のセルを指して)、Ctrl+Enter を押します。
- 表の範囲をコピーし、「値の貼り付け」で数式を値に戻します。
6. VBA でまとめて置き換える
選んでいるシートの中で、横1行の結合で中央揃えのものを「結合の解除+選択範囲内で中央」に置き換えます。縦に結合しているところや、中央揃えでない結合はそのまま残し、件数だけ知らせます。
Option Explicit
' 横1行・中央揃えのセル結合を「選択範囲内で中央」に置き換える
' 対象:選んでいるシート(複数選択も可)
' 縦の結合・中央揃えでない結合はそのまま残して件数を表示
Sub MergeToCenterAcross()
Dim sh As Object, c As Range, m As Range
Dim done As Long, kept As Long
For Each sh In ActiveWindow.SelectedSheets
If TypeName(sh) = "Worksheet" Then
For Each c In sh.UsedRange
If c.MergeCells Then
Set m = c.MergeArea
If m.Cells(1).Address = c.Address Then ' 結合範囲の左上だけ処理
If m.Rows.Count = 1 And m.HorizontalAlignment = xlCenter Then
m.UnMerge
m.HorizontalAlignment = xlCenterAcrossSelection
done = done + 1
Else
kept = kept + 1
End If
End If
End If
Next c
End If
Next sh
MsgBox "置き換え:" & done & " か所" & vbCrLf & _
"そのまま(縦の結合・中央揃えでない結合):" & kept & " か所", vbInformation
End Sub注意:マクロで変えた内容は Ctrl+Z で元に戻せません。実行する前にブックを保存(またはコピーを作成)してください。使い方は提出前のExcelを整えるVBAの「使い方」と同じです。
毎回の確認を、ボタン1つに
KoreDefo は、ブックの中のセル結合をシートごとに見つけて、場所を一覧にします。クリックでそのセルへ移動できるので、上の方法で「選択範囲内で中央」に置き換えられます。提出前のチェックとして、非表示の行・列や数字の文字化などと一緒に、ボタン1つで確認できます。
30日間無料で試すチェック項目の一覧を見る