スプレッドシートの集計を自動化する方法 関数・ピボット・GASを用途別に解説
2026年9月14日
著者:NEXT SCALE編集部
監修者:石丸真平

「毎月の売上データの集計に何時間もかかっている」「複数シートのデータを手作業で集約するのがミスの原因になっている」。Googleスプレッドシートでのデータ集計作業に時間を取られている方は多いのではないでしょうか。
Googleスプレッドシートには、データ集計を自動化するための機能が豊富に備わっています。集計関数(SUMIF・COUNTIF・QUERY)を使った条件付き集計、ピボットテーブルによるクロス集計、そしてGAS(Google Apps Script)を使った定期自動実行まで、目的に応じた自動化の方法を選択できます。
この記事では、スプレッドシートの集計を自動化する3つのアプローチを、関数・ピボットテーブル・GASの順に、具体的な使い方と活用例を交えて解説します。
| 確認したいポイント | 結論 | 詳細 |
| 集計の自動化にはどんな方法があるか? | 3つのアプローチがある | 集計関数による条件付き集計、ピボットテーブルによるクロス集計、GASによる定期自動実行の3つが主な方法です |
| プログラミング知識は必要か? | 関数とピボットは不要 | 関数やピボットテーブルはGUI操作だけで利用できます。GASはJavaScriptの基礎知識が必要です |
| 複数シートのデータ集約はできるか? | 関数やGASで対応可能 | IMPORTRANGE関数で別ファイルのデータを参照したり、GASで複数シートを自動統合したりできます |
| 定期的な自動実行はできるか? | GASのトリガーで実現 | GASの時間ベースのトリガーを使えば、毎日・毎週・毎月など指定した間隔で集計処理を自動実行できます |
この記事でわかること
・集計自動化に使える関数と具体的な使い方
・ピボットテーブルによるクロス集計の作り方
・GASを使った複数シート統合や定期実行の方法
・用途別の最適な自動化手法の選び方
・集計自動化の注意点とトラブル対策
| \ 業務自動化・DX推進のご相談はネクストスケールへ / ▶ 相談予約はこちら |
スプレッドシートの集計自動化|3つのアプローチ
スプレッドシートの集計を自動化するには、目的と難易度に応じて3つのアプローチがあります。まず全体像を把握してから、各手法の詳細に進みましょう。
3つのアプローチの比較
| 比較項目 | 関数による集計 | ピボットテーブル | GAS(Apps Script) |
| 難易度 | 低い(関数を入力するだけ) | 低い(GUI操作のみ) | 中〜高い(JavaScript知識必要) |
| 更新タイミング | データ変更時にリアルタイム | データ変更時にリアルタイム | 手動実行またはトリガーで定期実行 |
| 得意な処理 | 条件付き合計・カウント・平均 | クロス集計・グルーピング | 複数ファイルの統合、メール送信、定期実行 |
| 適したケース | シンプルな条件別集計 | 多角的な分析・レポート | ファイル間連携・完全自動化 |
シンプルな集計であれば関数だけで十分です。多角的な分析にはピボットテーブルが適しており、ファイル間の統合や定期的な自動実行まで必要な場合はGASを使います。
関数を使った集計の自動化
最も手軽に集計を自動化できるのが、スプレッドシートの関数です。ここでは、集計で頻繁に使う関数と具体的な使い方を紹介します。
SUMIF / SUMIFS:条件付き合計
SUMIF関数は、指定した条件に一致するデータの合計値を算出します。たとえば、売上データから「東京支店」の売上合計だけを抽出する場合に使います。
使用例:=SUMIF(B:B, “東京支店”, D:D)
意味:B列が「東京支店」である行のD列(売上金額)を合計する
複数条件で集計したい場合はSUMIFS関数を使います。
使用例:=SUMIFS(D:D, B:B, “東京支店”, C:C, “2026年9月”)
意味:B列が「東京支店」かつC列が「2026年9月」の行のD列を合計する
COUNTIF / COUNTIFS:条件付きカウント
COUNTIF関数は、指定した条件に一致するデータの件数をカウントします。顧客数や案件数の集計に使えます。
使用例:=COUNTIF(E:E, “完了”)
意味:E列のステータスが「完了」の件数をカウントする
QUERY関数:SQL風の柔軟な集計
QUERY関数は、SQLに似た構文でデータの抽出・集計・並べ替えを1つの関数で実行できる、スプレッドシート最強の集計関数です。
使用例:=QUERY(A1:E100, “SELECT B, SUM(D) WHERE C=’2026年9月’ GROUP BY B ORDER BY SUM(D) DESC”)
意味:C列が「2026年9月」のデータを、B列(支店名)ごとにD列(売上)を合計し、売上の降順で表示する
QUERY関数は、SUMIF+COUNTIF+SORT+FILTERの機能を1つの式に集約でき、複雑な集計レポートをシンプルに構築できます。
IMPORTRANGE:別ファイルのデータを参照して集計
IMPORTRANGE関数を使うと、別のスプレッドシートファイルからデータを自動で取得できます。各部署が別々のスプレッドシートで管理しているデータを、集計用のスプレッドシートに集約する場合に使います。
使用例:=IMPORTRANGE(“スプレッドシートのURL”, “シート名!A1:E100”)
意味:指定したスプレッドシートの指定範囲のデータを読み込む
IMPORTRANGEで取得したデータに対してSUMIFやQUERY関数を組み合わせれば、複数ファイルのデータを1つのシートで自動集計する仕組みが構築できます。
| \ 業務自動化・DX推進のご相談はネクストスケールへ / ▶ 資料請求はこちら |
ピボットテーブルによるクロス集計の自動化
ピボットテーブルは、大量のデータを任意の軸でグルーピングし、クロス集計を行うための機能です。GUI操作だけで作成でき、元データが更新されると集計結果も自動で反映されます。
ピボットテーブルの作成手順
1. 集計対象のデータ範囲を選択し、メニューの「挿入」→「ピボットテーブル」をクリックします。
2. ピボットテーブルの挿入先(新しいシート/既存のシート)を選択します。
3. ピボットテーブルエディタが表示されたら、「行」「列」「値」「フィルタ」のエリアに、集計したいフィールドをドラッグ&ドロップで配置します。
たとえば、「行」に支店名、「列」に月、「値」に売上金額(合計)を設定すれば、支店×月のクロス集計表が自動生成されます。「フィルタ」に商品カテゴリを設定すれば、カテゴリごとの表示切り替えも可能です。
ピボットテーブルの活用ポイント
ピボットテーブルは集計軸を自由に入れ替えられるため、同じデータを「支店別」「商品別」「月別」など複数の切り口で分析できます。集計値も合計・平均・最大・最小・カウントなどを選択でき、分析の目的に応じて柔軟に切り替えられます。
元データに新しい行が追加された場合は、ピボットテーブルのデータ範囲を再設定するか、あらかじめ広めの範囲を指定しておくことで、自動的に新しいデータが集計に含まれます。
GASを使った集計の完全自動化
関数やピボットテーブルでは対応しきれない「ファイル間のデータ統合」や「定期的な集計レポートの自動送信」を実現するには、GAS(Google Apps Script)を活用します。
GASで実現できる集計の自動化
複数シート・複数ファイルのデータ統合:GASのSpreadsheetAppを使って、複数のシートやファイルからデータを取得し、1つのシートに自動で統合できます。各部署が別々のファイルで管理している月次データを、集計用ファイルに毎月自動で取り込むといった処理が可能です。
集計結果の自動メール送信:GASのMailAppやGmailAppを使って、集計結果をメール本文やPDF添付として自動送信できます。「毎朝9時に前日の売上サマリをチーム全員にメール送信する」といった完全自動化が実現できます。
定期実行のトリガー設定:GASのトリガー機能を使えば、「毎日午前6時」「毎週月曜日」「毎月1日」など、指定した間隔で集計処理を自動実行できます。トリガーはGASのエディタから簡単に設定できます。
GASの基本コード例:シート間の集計
以下は、複数シートのデータを集計シートにまとめるGASの基本コード例です。
function aggregateSheets() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const summarySheet = ss.getSheetByName(‘集計’);
const sheets = [‘1月’, ‘2月’, ‘3月’];
summarySheet.clearContents();
let row = 1;
sheets.forEach(name => {
const sheet = ss.getSheetByName(name);
const data = sheet.getDataRange().getValues();
data.forEach(r => {
summarySheet.getRange(row, 1, 1, r.length).setValues([r]);
row++;
});
});
}
このコードは、「1月」「2月」「3月」の各シートのデータを「集計」シートに順番に転記します。トリガーで定期実行すれば、毎月自動で最新データが集計シートに反映されます。
GASの公式リファレンスは、Googleの開発者向けドキュメントで確認できます(参考:Google Apps Script リファレンス)。
| \ 業務自動化・DX推進のご相談はネクストスケールへ / ▶ 相談予約はこちら |
集計自動化の注意点とトラブル対策
集計の自動化はメリットが大きい一方で、設定ミスやデータの不整合によるトラブルも起こりえます。ここでは、よくある注意点と対策を紹介します。
注意点1:元データの形式を統一する
集計対象のデータの列の順番やデータ型がシートごとにバラバラだと、関数やGASが正しく動作しません。集計の自動化を始める前に、すべてのシートのデータ形式(列の順番、列名、データ型)を統一するルールを決めておきましょう。
注意点2:IMPORTRANGE関数の接続承認を忘れない
IMPORTRANGE関数を初めて使用する際は、参照先のスプレッドシートへのアクセス承認が必要です。承認は1回行えば以降は不要ですが、承認前はエラーが表示されます。「アクセスを許可」ボタンをクリックして承認してください。
注意点3:大量データの集計はパフォーマンスに注意
スプレッドシートの行数が数万行を超えると、関数の再計算やGASの処理に時間がかかるようになります。QUERY関数やIMPORTRANGE関数を多用すると読み込みが遅くなるため、必要な範囲だけを参照する、不要な数式を削除するといった対策が有効です。
注意点4:GASの実行時間制限に注意する
GASには1回の実行につき6分(無料アカウント)の時間制限があります。大量データの処理が6分以内に完了しない場合は、処理を分割してトリガーで順次実行する設計にしましょう。
注意点5:集計結果を検証する仕組みを用意する
自動化した集計結果が正しいかどうかを検証する仕組みを用意しておくことが重要です。元データの総件数と集計結果の件数を比較するチェック行を設ける、手動集計との突合を定期的に行うといった対策で、自動化のミスを早期に発見できます。
業務効率化のアイデアをより幅広く検討したい方は、業務効率化アイデア55選の記事もあわせてご確認ください。AI活用による業務改善については、ネクストスケールのAIコンサル・AX伴走支援のサービスもご活用ください。
| \ 業務自動化・DX推進のご相談はネクストスケールへ / ▶ 資料請求はこちら |
まとめ
スプレッドシートの集計を自動化するには、関数(SUMIF・COUNTIF・QUERY・IMPORTRANGE)による条件付き集計、ピボットテーブルによるクロス集計、GASによる複数ファイル統合や定期自動実行の3つのアプローチがあります。
シンプルな条件別集計であれば関数だけで十分対応でき、多角的な分析にはピボットテーブルが適しています。ファイル間のデータ統合や、メール送信を含む完全自動化まで求める場合は、GASを活用しましょう。
自動化にあたっては、元データの形式統一、IMPORTRANGE関数の接続承認、大量データのパフォーマンス対策、GASの実行時間制限への対処、集計結果の検証の仕組みづくりが重要です。まずは1つの集計作業を関数で自動化するところから始めて、段階的にGASによる完全自動化へとステップアップしていくアプローチがおすすめです。
AIコンサル・AX伴走支援サービスご紹介資料
この資料でこんなことがわかります!
- 社外AI役員とは
- 支援内容
- 導入の進め方
- 導入実績・効果
\3ステップで簡単入力/
この記事の監修者
株式会社ネクストスケール 代表取締役




