Googleスプレッドシートの結合セルは、シート全体を選択してツールバーの「結合を解除」を選ぶだけで一括解除できます。
ただし通常の解除では左上の値だけが残り、他のセルは空欄になります。本稿では基本のメニュー操作に加え、解除後のセルに元の文字を複製して埋めるGASのコードと手順を解説します。
先にコピーを作り、対象範囲を指定する
元ファイルのコピーを作り、シート名を「結合練習」にします。
A2:B2を結合して東京と入力し、A3:B3には10、A4:B4には数式 =2+3、A5:B5には日付を入れて結合します。
値を入れるのは各範囲の左上だけです。
結合前に右側にあった値は、解除によって復元されません。
メニューから一括で結合を解除する
名前ボックスへ A2:B5 と入力してEnterを押します。
ツールバーの「結合タイプを選択」を開き、「結合を解除」を選びます。
数式バーでA4の数式が =2+3 のままか確認します。
| 条件 | 結果 |
|---|---|
| A2:B2/文字 | A2は東京、B2は空欄 |
| A3:B3/数値 | A3は10、B3は空欄 |
| A4:B4/数式 | A4の計算値は5、数式は=2+3、B4は空欄 |
| A5:B5/日付 | A5の日付を保持、B5は空欄 |

この表は実際のメニュー操作で確認した結果です。
解除直後ならCtrl+Zで結合状態へ戻せます。
後から他の編集をした場合は、連続して元に戻す前に、作業コピーや変更履歴で復旧対象を確認します。
GASで文字ラベルだけを複製する
次のGASは、シート「結合練習」の A2:B2 だけを対象にします。
結合を解除し、東京をA2とB2へ複製する想定です。
対象全体の検査を終えるまで書き込みません。
数値・日付・数式・等号やアポストロフィで始まる文字列は拒否します。
範囲をまたぐ結合や1000セルを超える指定も拒否します。
function fillMergedLabels() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('結合練習');
if (!sheet) throw new Error('対象シートがありません: 結合練習');
const area = sheet.getRange('A2:B2'); // コピーした練習表の文字ラベルだけ
if (area.getNumRows() * area.getNumColumns() > 1000) {
throw new Error('対象は1000セル以内にしてください');
}
const plans = area.getMergedRanges().map(merged => {
if (merged.getRow() < area.getRow() || merged.getColumn() < area.getColumn()
|| merged.getLastRow() > area.getLastRow()
|| merged.getLastColumn() > area.getLastColumn()) {
throw new Error('対象範囲をまたぐ結合セルがあります');
}
const cell = merged.getCell(1, 1);
const value = cell.getValue();
if (cell.getFormula() || typeof value !== 'string'
|| value.startsWith('=') || value.startsWith("'")) {
throw new Error('複製できるのは数式ではない文字ラベルだけです');
}
return { merged, values: Array.from({ length: merged.getNumRows() },
() => Array(merged.getNumColumns()).fill(value)) };
});
// すべての入力を確認してから変更する。
plans.forEach(plan => {
plan.merged.breakApart();
plan.merged.setValues(plan.values);
});
console.log('処理した結合範囲: ' + plans.length);
}練習表の「拡張機能」→「Apps Script」で保存し、関数 fillMergedLabels を選んで実行します。
承認画面が出たら、コードと要求権限が練習表の変更に必要か確認します。
結果は東京が2セルに入り、処理した結合範囲が1になる想定です。
範囲を A2:B5 に広げると、数値を含むため変更前に停止する想定です。
この書き込みGASはローカルの模擬環境で、入力拒否と事前検査を確認しました。
Google上での承認・書き込み実行は未確認です。
実機確認済みのメニュー操作とは分けて扱います。
GASの複数範囲への書き込みはトランザクションではなく、権限や通信の失敗時に部分変更が残る可能性があります。
復旧は必ず変更前のコピーを使います。
解除できないときの切り分け
編集権限、保護された範囲、対象をまたぐ結合を確認します。
結合ボタンが無効なら、名前ボックスの範囲が単一セルになっていないか確かめます。
文字の複製が不要な数式や日付の表では、先のメニュー操作を使います。
操作・GAS・claspの練習ZIPをダウンロードできます。
値の種類はGoogleスプレッドシート│GASでスプレッドシートのA1セルの値を取得する方法で確認できます。
エラーの意味はGAS│エラーの意味と対処法|6分制限・承認・回数上限・トリガーを参照します。
関連記事と既存の案内
関連する操作は各記事へのリンクから確認できます。
練習ZIPと本文の検証範囲を優先し、旧実装や外部の例をそのまま業務ファイルへ適用しないようにします。





よくある質問:結合セルを一括で解除するときのチェックリスト
結合セルを、一括で解除するには?
シート全体、または対象の範囲を選択し、ツールバーの「結合タイプを選択」から「結合を解除」を選びます。名前ボックスに範囲(例:A2:B5)を入力してEnterを押すと、範囲を指定して選べます。
解除すると、結合していたセルの値はどうなりますか?
通常の解除では、左上の値だけが残り、他のセルは空欄になります。結合前に右側にあった値は、解除によって復元されません。作業の前に、元ファイルのコピーを作ってください。
数式や日付は、解除後も保たれますか?
メニュー操作では保たれます。この記事の練習では、A4の数式は解除後も数式のままで、計算値は5、A5の日付も保持されます。それぞれ、B列は空欄になります。
解除したあとで、元に戻せますか?
解除直後なら、Ctrl+Zで結合状態へ戻せます。後から他の編集をした場合は、連続して元に戻す前に、作業コピーや変更履歴で復旧対象を確認してください。
解除した後に、元の文字をすべてのセルへ入れるには?
GASで、文字ラベルだけを複製できます。記事のコードは、練習の範囲(A2:B2)だけを対象にします。数値・日付・数式・等号やアポストロフィで始まる文字列は拒否し、範囲をまたぐ結合や1000セルを超える指定も拒否します。
GASのコードは、動作確認済みですか?
メニュー操作は、実際のGoogle Sheetsで確認しました。書き込みGASはローカルの模擬環境で、入力拒否と事前検査を確認した範囲で、Google上での承認・書き込み実行は未確認です。まず練習用のコピーで試してください。
GASの書き込みが途中で失敗したら?
GASの複数範囲への書き込みは、トランザクションではありません。権限や通信の失敗時に、部分変更が残る可能性があります。復旧は、必ず変更前のコピーを使ってください。
結合を解除できません。
編集権限、保護された範囲、対象をまたぐ結合を確認します。結合ボタンが無効なら、名前ボックスの範囲が単一セルになっていないか確かめてください。画面は2026年10月2日のWeb版の表示で、最新の操作は公式ヘルプで確認してください。
