複数のスプレッドシートを使っていると、「このデータをひとつにまとめて集計したい」と思うことがあるかもしれません。たとえば部署ごとの売上や月ごとの記録など、2つのスプレッドシートをまとめる機会は意外と多いですよね。とはいえ、手作業でコピペするのは手間も多く、集計ミスの原因にもなります。スプレッドシートで複数ファイルをまとめるのは、関数を使う方法とGAS(Google Apps Script)で自動化する方法と複数考えられるのが特徴です。今回は、GASなどで複数ファイル・複数のスプレッドシートを指定して集計する方法をご紹介します。
2つのスプレッドシートをまとめる方法として、最も基本的なのは RANGE関数を使うやり方です。これは、他のスプレッドシートからデータを読み込む関数で、次のように入力しましょう。
=IMPORTRANGE(“スプレッドシートのURL”,”シート名!A1:D100″)
スプレッドシートをRANGE関数でまとめるときは、「外部ファイルのURL」と「参照したい範囲」をセットで指定します。たとえば、売上データを別シートから読み込む場合、「=IMPORTRANGE(“URL”,”売上!A1:D100″)」のように書くことで、指定した範囲のデータを自動的に取得することが可能です。指定した範囲を自動的に参照し、更新内容もリアルタイムで反映されます。手動コピーとは異なり、常に最新のデータを取得できるのがメリットです。一方で、共有設定を行わないと「#REF!」エラーが出る場合もあるため、最初に「アクセスを許可」をクリックする必要があります。2つのスプレッドシートをまとめる作業が多い場合はまずはこの方法を押さえておきましょう。
スプレッドシートで複数シートの集約をしたい場合はQUERYという関数が便利です。この方法ではたとえば、同じ列構成の「1月」「2月」「3月」シートがある場合、次のようにQUERY関数を使うとすべてのデータを1つに集約できます。
={QUERY(1月!A:D,”select * where A is not null”);
QUERY(2月!A:D,”select * where A is not null”);
QUERY(3月!A:D,”select * where A is not null”)}
この式では、各シート(1月・2月・3月)のA~D列をそれぞれQUERY関数で抽出し、空白行を除外しました。このように括弧で囲み、セミコロンでつなぐことでGoogleスプレッドシートでの複数シートを統合することが可能です。QUERYの使い方によっては、フィルタや並び替えなどの条件も指定できるため、複数ファイルをまとめるのをより柔軟に行えます。
スプレッドシートで複数ファイルをまとめるには、GASを使った方法も考えられます。GASでは複数ファイル・複数のスプレッドシートを指定して集計することができます。基本構文の流れは次の通りです。指定フォルダ内の複数ファイルを順に読み込み、1つのシートに集約します。たとえば、GASで「フォルダ内のスプレッドシート一覧を取得→各ファイルの特定シートを開く→データを配列で取得→1つの集計シートに転記」という流れです。こうすることで、複数のスプレッドシートをまとめて自動的に更新できる仕組みを作れます。
スプレッドシートではエクセルのような串刺し集計をする機能がありません。そこで関数を使って処理します。スプレッドシートでは、IMPORTRANGE+QUERY関数を組み合わせることで複数ファイルをまとめるだけでなく串刺し集計を行うことが可能です。たとえば、部署ごとに別ファイルで管理しているデータを1枚のシートで集計したい場合、次のように指定します。
=QUERY({IMPORTRANGE(“URL1″,”売上!A:D”);
IMPORTRANGE(“URL2″,”売上!A:D”)},
“select Col1,Col2,sum(Col4) group by Col1,Col2”)
この方法で、複数ファイルを1つにまとめながら、部門ごとの合計の自動計算が可能です。スプレッドシートで複数シートを集約するQUERY関数の考え方を応用すれば、別ファイル間の串刺し集計もスムーズに行えます。一方で、スプレッドシートで串刺し集計にGASを使うとデータ数が多い場合でも安定して動作し、構造が異なるファイルも統一的に処理できるでしょう。
今回は、GASで複数のスプレッドシートをまとめる方法などについてご紹介しました。スプレッドシートが少量のデータであればIMPORTRANGEやQUERYなどの関数で複数ファイルをまとめることができますが、ファイル数が多くなる場合はGASで自動化するのが現実的です。特に、月次や部署ごとに複数のスプレッドシートを扱うケースでは、GASによる一括処理が大きな時短につながります。うまく使い分けることで、メンテナンスのしやすさと柔軟性を両立しましょう。最後までお読みいただきありがとうございました。