「商品コードごとの売上合計を出したい」「部署別の件数を数えたい」。毎月こういう集計を、SUMIF や COUNTIF を並べて作っていませんか。
数式自体は難しくありません。ただ、条件が増えると式が長くなり、集計キーが変わるたびに作り直し。元データを差し替えたら数式の参照範囲もずれる、という地味なストレスがつきまといます。
そんな「キーごとの集計」を、数式なしでこなせるのが Power Query のグループ化 です。集計したい列を選んで設定するだけで、合計・件数・平均をまとめて出してくれます。しかも元データを差し替えて「更新」を押せば、同じ集計を何度でも再実行できます。
この記事では、Power Query のグループ化の基本手順を、SUMIF・COUNTIF の代替という視点で解説します。複数キー・複数集計列を扱う詳細設定や、マージと組み合わせて「突合しながら集計する」応用までカバーするので、関数で複雑になっていた集計を一気に整理できます。
なお本記事は Windows 版 Excel(Microsoft 365 / 2019 / 2021 / 2024) での操作を前提にしています。
Power Queryのグループ化とは?SUMIF・COUNTIFとの違い
Power Query のグループ化とは、 指定したキー列が同じ行をまとめて、合計・件数・平均などを計算する機能 です。SUMIF でいう「条件ごとの合計」、COUNTIF でいう「条件ごとの件数」を、関数を1つも書かずに実現できます。
たとえば売上明細から「商品コードごとの売上合計」を出したいとき、グループ化で商品コードをキーに指定し、金額を合計するよう設定する。それだけで、商品ごとに1行へ集約された集計表ができあがります。
SUMIF・COUNTIFとの3つの違い
同じ集計でも、関数とグループ化では仕組みが大きく違います。実務で効いてくるのは次の3点です。
- キーの一覧を作らなくていい: SUMIF はキーの一覧を別に用意して数式を引っ張りますが、グループ化はキーの種類を自動で拾って集約します
- 複数の集計を一度に出せる: 合計・件数・平均を1回の操作でまとめて追加できます。SUMIFとCOUNTIFを別々に組む必要がありません
- 更新ボタンで再実行: 翌月の明細に差し替えて「すべて更新」を押すだけで、集計済みの表が再生成されます
少量データでサッと確認したいときは関数、毎月の定型集計や大量データならグループ化、という使い分けが基本です。SUMIF の基本をおさらいしたい方は ExcelのSUMIF関数の使い方 もどうぞ。
GROUPBY関数との違い
Microsoft 365 には、数式でグループ集計ができる GROUPBY 関数 もあります。1つのセルに数式を書くだけで動的に集計表を返してくれる便利な関数です。
ただし GROUPBY は新しい関数のため、対応していない環境もあります。Power Query のグループ化なら 2019 以降の幅広いバージョンで使え、他の整形処理ともつなげられるのが強みです。関数派の方は ExcelのGROUPBY関数の使い方 と読み比べて、自分の環境に合うほうを選んでみてください。
Power Queryのグループ化の手順【4ステップ】
ここからは、売上明細から「商品コードごとの売上合計」を出す流れを例に、基本のグループ化を4ステップで進めます。
ステップ1: 明細表をPower Queryに読み込む
まず集計したい表を Power Query に取り込みます。明細表の中のセルをどれか1つ選んでおきましょう。
「データ」タブ →「テーブルまたは範囲から」をクリックします。表の範囲を確認するダイアログが出るので、先頭行が見出しになっていることを確認して「OK」を押します。
これで Power Query エディターが開き、明細データが読み込まれます。まだ集計はしていません。元の表を取り込んだだけの状態です。
ステップ2: グループ化を実行する
エディター上部の「変換」タブを開き、「グループ化」ボタンをクリックします。グループ化の設定ダイアログが表示されます。
ダイアログでは、まず グループ化の基準 にキー列を指定します。今回は「商品コード」を選びます。
ここで指定した列が、SUMIF でいう「条件」にあたります。同じ商品コードを持つ行が、1つのグループにまとめられます。
ステップ3: 集計方法と対象列を指定する
次に、何をどう集計するかを決めます。ダイアログ下部で次の3つを設定します。
- 新しい列名: 集計結果を入れる列の名前(例: 売上合計)
- 操作: 集計方法。今回は「合計」を選びます
- 列: 集計の対象となる列。今回は「金額」を選びます
操作には「合計」「平均」「最小」「最大」「行数のカウント」などが用意されています。SUMIF 相当なら「合計」、COUNTIF 相当なら「行数のカウント」を選べばOKです。
「行数のカウント」だけは対象列の指定が不要です。グループに含まれる行をそのまま数えてくれます。
ステップ4: 結果を確認してシートに読み込む
設定できたら「OK」を押します。商品コードごとに1行へ集約され、右側に「売上合計」列が表示されれば成功です。
最後に「ホーム」タブ →「閉じて読み込む」をクリックすると、集計結果がワークシートに新しいテーブルとして出力されます。
ここまでが基本の流れです。次の月のデータに差し替えたら、テーブルを右クリック →「更新」を押すだけで、同じ集計をやり直してくれます。
複数キー・複数集計列を扱う詳細設定
基本のグループ化は1つのキーと1つの集計でしたが、実務では「部署別かつ月別の件数」のように、複数の切り口で集計したい場面が多いはずです。グループ化はこの 詳細設定 にしっかり対応しています。
複数のキー列でグループ化する(SUMIFS・COUNTIFS相当)
グループ化ダイアログには「詳細設定」という選択肢があります。これに切り替えると、グループ化の基準を 複数の列 に増やせます。
たとえば「部署」と「月」の2つをキーに指定すれば、部署×月の組み合わせごとに集計されます。これは数式でいう SUMIFS や COUNTIFS にあたる処理です。条件が2つでも3つでも、列を追加するだけで設定できます。
複数条件の集計を関数でやろうとすると式が一気に複雑になりますよね。グループ化なら、キー列を足すだけなのでミスも減ります。SUMIFS の数式版を確認したい方は ExcelのSUMIFS関数の使い方 もあわせてどうぞ。
複数の集計列を一度に追加する
詳細設定では、集計の行も「集計の追加」で増やせます。1回の操作で、合計・件数・平均を同時に出せるということです。
たとえば商品コードごとに次の3つをまとめて出す、といった集計が一発で作れます。
- 売上合計(操作: 合計 / 列: 金額)
- 取引件数(操作: 行数のカウント)
- 平均単価(操作: 平均 / 列: 単価)
関数なら SUMIF・COUNTIF・AVERAGEIF を別々に組む必要がありますが、グループ化なら1つのダイアログで完結します。集計列ごとに名前と操作を指定するだけです。
後から集計内容を変更したいとき
グループ化の設定は、後から何度でも編集できます。エディター右側の「適用したステップ」で「グループ化された行」の横にある歯車アイコンをクリックすると、同じダイアログが再表示されます。
集計方法を変えたり、キー列を増やしたりしても、それまでの整形ステップはそのまま残ります。試行錯誤しやすいのも、関数にはない強みです。
マージ×グループ化でVLOOKUP+集計を一気に行う
ここからは応用編です。グループ化は、 マージ(結合) と組み合わせると一気に実務的になります。「別表の情報をくっつけてから集計する」という、VLOOKUP+SUMIF の合わせ技を1つの流れで実現できます。
よくある「突合してから集計」のケース
たとえば、売上明細には商品コードしか入っておらず、商品の「カテゴリ」は商品マスタにあるとします。やりたいのは「カテゴリごとの売上合計」です。
関数なら、まず VLOOKUP で明細にカテゴリを引っ張り、そのうえで SUMIF でカテゴリ別に合計する、という二段構えになります。Power Query なら、これを一本のクエリでつなげられます。
手順は「マージ → グループ化」の2段階
流れはシンプルです。先にマージで情報をくっつけ、そのあとグループ化で集計します。
- 明細クエリに商品マスタを マージ して、カテゴリ列を取り込む
- 取り込んだカテゴリを グループ化のキー にして、金額を合計する
これで「カテゴリごとの売上合計」が完成です。来月の明細に差し替えても、マージとグループ化のステップがそのまま再実行されるので、更新ボタン1つで最新の集計に切り替わります。
マージの具体的な操作は Power Queryのマージで複数テーブルを結合する方法 で詳しく解説しています。突合に不安がある方は先にこちらを読むとスムーズです。
集計の前にデータを整えておくと安定する
マージとグループ化を組み合わせるときは、 集計前のデータ整形 が効いてきます。クロス集計表のように横に広がったデータは、そのままだとグループ化しづらいことがあります。
そんなときは、縦持ちに変換してから集計すると扱いやすくなります。表の形を整える方法は Power Queryのピボット解除でクロス集計表を縦持ちに変換する方法 で紹介しているので、形が合わないと感じたら参考にしてください。
うまくいかないときの対処法
最後に、グループ化でつまずきやすい3つのケースと対処法をまとめます。
同じはずのキーが別グループに分かれてしまう
「同じ商品コードなのに2行に分かれた」というトラブルは、 キーの見えない違い が原因です。
- 前後に余分なスペースが入っている
- 全角と半角が混ざっている
- 片方が文字列、片方が数値になっている
対処法は、グループ化の前にキー列を整えることです。列を選んで「変換」タブ →「書式」→「トリミング」で余分なスペースを除き、「変換」タブ →「データ型」で型をそろえておきましょう。
「合計」を選びたいのに選択肢に出てこない
操作の選択肢に「合計」や「平均」が出てこない場合、集計対象の 列が数値型になっていない 可能性が高いです。
金額や数量の列が文字列のままだと、数値の集計が選べません。対象列を選び「変換」タブ →「データ型」で「整数」や「10進数」に変換してから、もう一度グループ化を試してください。
件数を数えたいのにエラーになる
件数を出したいときは、対象列を指定する「カウント」ではなく 「行数のカウント」 を選ぶのがポイントです。
「行数のカウント」はグループ内の行をそのまま数えるので、対象列の指定が不要です。COUNTIF と同じ感覚で使えます。空白を除いて数えたいなど細かい条件があるときは、先に不要な行をフィルターで除いてからグループ化すると確実です。
まとめ:集計は「グループ化」で数式から卒業しよう
Power Query のグループ化を使えば、SUMIF や COUNTIF を並べる集計作業から卒業できます。キー列を選んで集計方法を指定するだけで、合計・件数・平均をまとめて出せるのが大きな魅力です。
ポイントを整理すると、次の3つになります。
- 基本は「キー1つ+合計」から: SUMIF と同じ発想なので理解しやすい
- 詳細設定で複数キー・複数集計: SUMIFS や複数の集計列も列を足すだけ
- マージと組み合わせて突合+集計: VLOOKUP+SUMIF の合わせ技も一本のクエリで
そして最大の利点は、更新ボタン1クリックで同じ集計を再実行できることです。毎月の定型集計こそ、グループ化の出番です。
Power Query 全体でどんなことができるのか地図を確認したい方は Power Query完全ガイド を、まずは基本操作から始めたい方は Excel Power Query入門|コピペ集計を卒業する4つの自動化レシピ をどうぞ。
毎月の集計をラクにする第一歩、今日のうちに試してみてください。
