AGGREGATE関数

Excel 2010+

概要

AGGREGATE関数はリストやデータベースの集計値を計算します。非表示行やエラー値を柔軟に無視するオプションを備え、従来の集計関数では対応できない高度なデータ処理を実現します。データフィルタリング後の正確な集計に最適です。

構文

AGGREGATE(集計方法, オプション, 範囲1, [範囲2], …)

パラメータ

パラメータ タイプ 必須 説明
集計方法 数値(1-19) はい 集計関数番号:1=AVERAGE,2=COUNT,3=COUNTA,4=MAX,5=MIN,6=PRODUCT,7=STDEV.S,8=STDEV.P,9=SUM,10=VAR.S,11=VAR.P,12=MEDIAN,13=MODE.SNGL,14=LARGE,15=SMALL,16=PERCENTILE.INC,17=QUARTILE.INC,18=PERCENTILE.EXC,19=QUARTILE.EXC
オプション 数値(0-7) はい 無視設定:0=ネスト集計のみ,1=非表示行+ネスト,2=エラー+ネスト,3=非表示+エラー+ネスト,4=無視なし,5=非表示のみ,6=エラーのみ,7=非表示+エラー
範囲1 範囲/配列 はい 集計対象データ(セル範囲、配列、数式)
範囲2… 範囲/配列 いいえ LARGE,SMALL,PERCENTILE,QUARTILE関数用の第2引数(省略可)

AGGREGATE関数の使用

AGGREGATE関数は、Autoフィルタやテーブルでの非表示行を考慮した集計に最適です。通常のSUM/AVERAGE関数ではフィルタ結果を含めて計算されてしまいますが、AGGREGATEなら表示されているデータのみを正確に集計できます。エラー値の多いデータでも安定した結果を得られます。

AGGREGATEの一般的な例

エラー値を無視した最大値

=AGGREGATE(4,6,A1:A20)

範囲内のエラー値を無視して最大値を求めます(オプション6=エラー無視)

非表示行を除外した平均

=AGGREGATE(1,5,B1:B100)

フィルタで非表示になった行を除外して平均値を計算(オプション5=非表示無視)

第3位の大きい値(エラー無視)

=AGGREGATE(14,6,A1:A50,3)

エラー値を無視し、3番目に大きい値を抽出

完全無視なしの合計

=AGGREGATE(9,4,C1:C100)

非表示行もエラーもネスト集計も無視せず合計(オプション4=無視なし)

メジアン値計算

=AGGREGATE(12,7,D1:D30)

非表示行とエラーを無視した中央値計算

よくある質問

両方とも非表示行対応ですが、AGGREGATEはエラー無視や19種類の関数に対応。SUBTOTALは11種類のみ。

非表示行、エラー値、ネストされたSUBTOTAL/AGGREGATEを全て無視します。最も一般的な設定です。

縦方向(列データ)専用。横方向では非表示列の影響を受けません。

AGGREGATE内では必須。=AGGREGATE(14,6,範囲,3)のように順位を指定。

一般的なエラーと解決策

#VALUE! エラー

Cause: LARGE/SMALL/PERCENTILE系関数で第2引数未指定

Solution: 集計方法14-19では範囲2(k値)を必ず指定

#VALUE! エラー

Cause: 3D参照使用

Solution: 通常のセル範囲のみ使用

予期せぬ集計結果

Cause: オプション設定ミス

Solution: 目的に合ったオプションを選択(3=推奨)

集計方法エラー

Cause: 1-19以外の番号

Solution: 有効な集計方法番号を確認

注記

  • Excel 2010以降で使用可能
  • 集計方法入力時に関数一覧がドロップダウン表示
  • 最大253個の範囲引数対応
  • 配列数式としても使用可能
  • 縦方向データ集計専用

互換性

利用可能: Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365

利用不可: Excel 2007以前

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2010+