AGGREGATE関数 – 小計や統計処理を柔軟に行う多機能関数
1. 使い方と活用例
AGGREGATE関数は、合計、平均、最大値、順位などの計算を、フィルターやエラーを無視して柔軟に実行できる関数です。
SUBTOTAL関数の上位互換で、エラーのあるデータの無視、非表示行の除外など、高度な制御が可能です。
2. 基本の書式
=AGGREGATE(関数番号, オプション, 配列または数値1, [数値2], …)
3. 引数の説明
- 関数番号 – 使用する計算方法を指定する番号(1〜19)。例:1=AVERAGE、9=SUM、14=LARGEなど。
- オプション – 無視する内容を指定する番号。
- 0:何も無視しない
- 1:非表示の行を無視
- 2:エラー値を無視
- 3:非表示の行とエラー値を無視
- 4:SUBTOTAL関数を無視
- 5:非表示行とSUBTOTALを無視
- 6:エラーとSUBTOTALを無視
- 7:非表示行、エラー、SUBTOTALすべてを無視
- 配列または数値1 – 集計対象のデータ範囲または数値。
- 数値2以降(省略可)– 一部の関数番号(例:LARGE、SMALLなど)では追加の引数が必要。
4. 使用シーン
- エラー値を含むデータで平均・合計などを安全に計算したいとき
- フィルターで非表示にした行を除いて集計したいとき
- LARGE、SMALL、PERCENTILEなど、順位や分位点を条件付きで求めたいとき
5. 応用のポイント
AGGREGATE関数は、2つのモード(配列形式と参照形式)で動作します。
関数番号 14〜19(LARGE、SMALLなど)は配列形式専用であり、複数の数値を渡す形で指定します。
オプションをうまく使うことで、複雑な集計処理を1行の数式で実現できます。
6. 具体例とその解説
=AGGREGATE(9, 3, A1:A10)
A1:A10 の合計(関数番号 9)を計算し、非表示行とエラーを無視します。
=AGGREGATE(14, 6, A1:A10, 2)
A1:A10 の中から、2番目に大きい値(LARGE)を計算。エラー値と SUBTOTAL を無視します。
=AGGREGATE(1, 2, A1:A10)
A1:A10 の平均(AVERAGE)を計算し、エラー値のみを無視します。
7. 関連関数の紹介
- SUBTOTAL関数 – フィルター対応の集計を行う関数(AGGREGATEの下位互換)
- LARGE関数 – 配列内で n 番目に大きい値を求める関数
- IFERROR関数 – エラー値の処理を行う関数
- AVERAGE関数 – 標準的な平均を求める関数
8. まとめ
AGGREGATE関数は、複雑なデータセットでも柔軟に対応できる高度な集計関数です。
エラーや非表示データの扱いを細かく制御できるため、
実務の場面で安全かつ正確な集計を行うのに非常に有効です。
9. 対応バージョン
AGGREGATE関数は、Excel 2010以降で使用可能です。
Microsoft 365、Excel for Mac、Web版Excelでも対応しています。
Excel 2007以前では使用できません。