普段の業務に使うExcel関数の数は、Excel職人でもないかぎり、数10種類でしょうか?
いまや全500種類以上搭載され、日々進化し続けているExcel関数のすべてを使いこなすビジネス・パーソンは、それほど多くはないでしょう。
しかし、新関数には劇的に作業を時短化してくれるものが少なくありません。
今回ご紹介するGROUPBYも、その一例です。
この記事では、2024年9月末に一般公開された新しい集計関数の、基本的な使い方をご紹介します。
Microsoft 365版Excelなどで利用できますので、対象バージョンのExcelを使用中なら、覚えておいた方がよい新関数の1つですよ。
GROUPBY関数は、面倒だった縦方向ピボットテーブルを、関数だけで作れるMicrosoft365版Excel新機能
Microsoft公式Excel Blogにて、2024年9月25日に正式公開(開発者向けInsider programでは、1年ほど前から試用可能でした)されたGROUPBY関数とPIVOTBY関数。
どちらも、ピボットテーブルの代わりとなる新関数です。別の機会にご紹介する予定のPIVOTBY関数が、縦・横2軸でグループ化するのに対して、GROUPBY関数は、縦(行)方向でデータをグループ化・集計するものです。
では、サンプルを使って実際に見てみましょう。
どの職場にもありそうな、一般的な日別売上集計表を用意します(ダミー・データです。担当者名の欄も、英語人名ジェネレータより出力したものを使用し、特定個人を指すものではありません)。この資料から、部署別に集計した資料をまとめます。
どのように作業しますか?
従来でしたら、部署別にソート(並べ替え)を行って小計を出すか、行を「部署名」とするピボットテーブルを別シートに生成するなどの方法がありました。
コレ、GROUPBY関数を使うと”一発”なんです。
この関数の基本構文は、以下の通りです(Microsoft公式サポートの解説文を一部抜粋)。
=GROUPBY(row_fields,values,function,[field_headers],[total_depth],[sort_order],[filter_array],[field_relationship])
まだ引数名も英単語のままなので、面倒に思うかもしれませんが、試しに、同一ワークシートのどこかのセルへ、
=GROUPBY(B:B,E:E,SUM,,,,)
と入れてみてください(第1〜第3引数まで必須。それ以外は省略。上記は、B列「部署名」を行ヘッダに、E列「金額」を「集計するデータ範囲」とし、SUM(合計)するという意味です)。
ここでもMicrosoft 365版Excelの便利なスピル(数式の結果を複数のセルへ一括表示する)機能が働いて、1つの関数式を入力するだけで、結果テーブルが自動生成されます。
もし、集計表に行ヘッダが欲しければ、第4引数を3(表示)に変更。
合計値を表示したくなければ、第5引数を0(非表示)へ変更。ゼロ値を省くなら、第7引数にE:E<>””(空白セル非表示)と指定してみてください。
一瞬で、集計表が整形されましたね。さらに、営業成績順にソートしたければ、第6引数に-2(降順)を入力してみてください。
金額が高い順にソートされました。
今回、データ範囲は列全体(B列およびE列)を指定していますので、後からレコードを追加しても、すぐにその内容が集計表およびグラフに自動反映されます。
複数項目での集計が必要なら、HSTACK関数との組み合わせ
ここまでくると、ピボットテーブルでできることを、もっといろいろ試してみたくなりませんか?
たとえば、「部署別・製品別集計表」など。これもやはり新関数HSTACKと組み合わせると、簡単に仕上がります。
STACK関数については、せるワザでも以前の記事でご紹介しましたが、複数要素を「つみかさねる」関数です。
そこで、GROUPBY関数の第1引数をHSTACK(B:B,D:D) ※部署名+製品名 とし、第5引数を0から2(総計と小計)に変更してみてください。 部署別かつ製品別にレコードが再集計され、部署別小計と総合計が自動挿入されました。
まとめ:ピボットテーブル分析を関数化できる新関数爆誕!他の新関数やスピルを組み合わせれば、1関数式だけで分析完了
売上日報のようなワークシートを集計する仕事は、多くの職場で日常的に行われていることでしょう。
その際、従来のピボットテーブルを使って集計・分析したら、Excel職人が異動・退職する時に引継書を残してもらわないと、後から同じ分析を再現できない可能性もありました。
しかし、元レコードはそのまま残しておいて、関数式の履歴も残して集計・分析しておけば、後から類似の作業へ”使い回す”ことが、いくらでもできます。しかも他の新関数やスピルなども組み合わせれば、手入力する関数式は本当に「1文」のみで資料完成! これほどラクな新機能(新関数)ならば、覚えておいて損はないのではないでしょうか?
もしMicrosoft 365版など、新関数GROUPBYを使えるバージョンのExcelに触れる機会があれば、ぜひ一度試用してみてください。
使い方によっては、新関数XLOOPUPなどと同じくらい、利用価値が高い助っ人になるかもしれませんよ!?