Googleスプレッドシートの1000万セル上限とは?残りセル数の調べ方と上限対策の完全ガイド

,

業務やデータ管理で欠かせないGoogleスプレッドシートですが、実は1つのファイルに保持できるセル数には上限が定められています。
日常的に大量のデータを蓄積していると、ある日突然「セル数の上限に達しました」というエラーが発生したり、ファイルの動作が極端に重くなったりすることがあります。
この記事では、スプレッドシートのセル上限仕様、意外と知られていない「セル数の計算ルール」、Google Apps Script(GAS)を使って現在の総セル数と残りセル数を数分で正確に調べる方法、そして上限に達しないための具体的な対策を分かりやすく解説します。

Googleスプレッドシートのセル上限仕様

Googleスプレッドシートにおける1ファイルあたりの上限仕様は以下の通り定められています。

項目 制限・仕様 補足
最大セル数 10,000,000 セル(1,000万セル) ファイル内全シートの合計
最大列数 18,278 列(ZZZ列まで) 1シートあたりの最大列数

以前は500万セルが上限でしたが、現在は拡張されて「1,000万セル」まで作成できるようになっています。しかし、複数シートで運用していたり、システム連携や日々の入力でデータを取り込んでいるファイルでは、気付かないうちに上限近くまで達してしまうケースが少なくありません。

知っておくべきセル数カウントの重要なルール

セル数の消費において、最も注意しなければならないのが「カウントの仕組み」です。

  • 文字が入っていない「空白セル」もすべてカウント対象
    スプレッドシートのセル数は、データが入力されているセルだけではなく、「行数 × 列数」で計算されます。例えば、1行目にしか文字が入っていなくても、シート全体が1,000行×26列(Z列)であれば、それだけで26,000セルを消費しています。
  • ファイル内に存在する全シート(非表示シート含む)の合算
    上限の1,000万セルは、スプレッドシートファイル全体での合計値です。下部にあるすべてのタブシート(非表示にしているシートも含みます)の「行数 × 列数」を足し合わせた総数が判定対象となります。

そのため、通常の画面を眺めているだけでは「現在何セル消費していて、あとどれくらい追加できるのか」を正確に把握することは困難です。

GASを使って総セル数と残りセル数を正確に調べる手順

現在のスプレッドシートの総セル数と残りセル数を最も素早く、正確に調査するには、標準搭載されているGoogle Apps Script(GAS)を利用するのが確実です。

プログラミングの知識がなくても、コードをコピー&ペーストして実行するだけで、画面上にメッセージボックスとして結果が表示されます。

セル数測定用スクリプトコード

function checkCellCount() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = ss.getSheets();
  var totalCells = 0;
  
  for (var i = 0; i < sheets.length; i++) {
    var sheet = sheets[i];
    var rows = sheet.getMaxRows();
    var cols = sheet.getMaxColumns();
    totalCells += (rows * cols);
  }
  
  var maxLimit = 10000000;
  var remaining = maxLimit - totalCells;
  var usagePercent = ((totalCells / maxLimit) * 100).toFixed(2);
  
  Browser.msgBox(
    "【セル数カウント結果】\n\n" +
    "・現在の総セル数: " + totalCells.toLocaleString() + " セル\n" +
    "・残り利用可能数: " + remaining.toLocaleString() + " セル\n" +
    "・使用率: " + usagePercent + " %"
  );
}

GASの実行手順

  • 調べたいスプレッドシートを開き、メニューバーの「拡張機能」から「Apps Script」をクリックします。
  • 新しいタブでエディタ画面が開いたら、最初から入力されているテキスト(function myFunction() { } など)をすべて削除して空にします。
  • 上記のコードをそのまま貼り付けます。
  • エディタ上部の「保存アイコン(フロッピーディスクのマーク)」をクリックします。
  • 上部メニューの「実行」ボタンをクリックします。

初回実行時の承認手順(権限確認)

初めてApps Scriptを実行する際は、Googleのセキュリティ承認画面が表示されます。以下の手順で許可を行ってください。

  1. 「承認が必要です」というダイアログが出たら、「権限を確認」をクリックします。
  2. ご自身のGoogleアカウントを選択します。
  3. 「Google はこのアプリを検証していません」という警告画面が表示されたら、左下の「詳細」リンクをクリックします。
  4. 「無題のプロジェクト(安全ではないページ)に移動」をクリックします。
  5. アクセスリクエスト画面で「許可」をクリックします。

実行が完了したらスプレッドシートのタブに戻ると、画面中央に現在の総セル数、残りセル数、使用率がポップアップで分かりやすく表示されます。

プログラムを使わずに手動で大まかに把握する方法

プログラムを使わずに概算したい場合は、データが最も多い主要シートを開いて計算します。

各シートの一番下にある行番号(例:50,000行)と、一番右にある列番号(例:Z列なら26列)を確認し、掛け算(50,000 × 26 = 130万セル)を行うことで、そのシート単体の消費セル数を大まかに見積もることができます。

スプレッドシートの上限到達を防ぐ実践テクニック

スプレッドシートを長期間安定して運用し、1,000万セルの上限や動作の重延化を防ぐための効果的な対策をご紹介します。

不要な空白行・空白列をこまめに削除する

スプレッドシートで新規シートを作成すると、初期状態で1,000行 × 26列(Z列)= 26,000セルが自動的に生成されます。
実際に使用しているのがA〜E列、100行程度であれば、残りのF〜Z列や101行目以降の空白領域は無駄にセル枠を消費している状態です。

使っていない余分な右側の列や下部の行を一括選択して削除するだけで、数万〜数十万セル単位の空き容量をすぐに節約できます。

蓄積型データシートの定期アーカイブ

アクセスログ、履歴データ、過去の取引明細など、日々行が追加されていく蓄積型シートはセル数の消費スピードが非常に早くなります。
「1年以上前のデータは年度別アーカイブ用の別スプレッドシートへ移行して元のシートから削除する」といった定期的なクレンジングルールを設けるのがおすすめです。

年度や期ごとのファイル分割運用

1つのファイルですべての年月のデータを管理し続けると、いずれセル上限に達するだけでなく、計算処理やフィルタリングの読み込み速度が低下します。
「2025年度用」「2026年度用」のように年度やプロジェクトの切り替わりタイミングでファイルを複製・リフレッシュして運用することで、常に軽快なレスポンスを維持できます。

まとめ

  • Googleスプレッドシートの上限は1ファイルあたり「1,000万セル(または18,278列)」。
  • データが入っていない「空白セル」も全シート合算で上限カウントに含まれる。
  • GASの「checkCellCount」スクリプトを実行すれば、現在の総セル数と残りセル数を1分で正確に把握できる。
  • 余分な空白行列の削除や過去データの別ファイルアーカイブを行うことで、安全かつ快適に運用できる。

ファイルが突然上限に達して編集できなくなるトラブルを避けるためにも、大規模なスプレッドシートを運用している方はぜひ一度現在のセル数を測定し、定期的なメンテナンスを取り入れてみてください。