AGGREGATE関数 リストまたはデータベースの集計値を返す

関数名 AGGREGATE
分類 数学/三角
説明 リストまたはデータベースの集計値を返す
バージョン -
カテゴリ Excel関数一覧

ここでの解説は、特に説明がない限り、Excelをインストールし、初期設定のまま使用した場合の動作を基に解説しています。

書式

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

1 - 集計方法 ----- 使用する関数を数値で指定します。
指定できる値は次の通りです。

2 - オプション ----- 関数の検証範囲内の無視する値を数値で指定します。
指定できる値は次の通りです。

  • オプション動作
  • 0 または 省略ネストされた SUBTOTAL関数と AGGREGATE関数を無視します。
  • 1非表示の行、ネストされた SUBTOTAL関数と AGGREGATE関数を無視します。
  • 2エラー値、ネストされた SUBTOTAL関数と AGGREGATE関数を無視します。
  • 3非表示の行、エラー値、ネストされた SUBTOTAL関数と AGGREGATE関数を無視します。
  • 4何も無視しません。
  • 5非表示の行を無視します。
  • 6エラー値を無視します。
  • 7非表示の行とエラー値を無視します。

ここで出てくる「ネスト」とは、「関数の中に関数を入れること」で、入れ子ともいいます。
この場合、AGGREGATE関数の引数として、AGGREGATE関数を指定すること、となります。

3 - 範囲1 ----- 2で指定した関数に渡す、最初の引数を指定します。
4 - [範囲2], … ,[範囲253] ----- (省略可) 2で指定した関数に渡す、2番目以降の引数を指定します。


解説

例えば、各セルに図の様な値が入力されているとします。
Excel関数
セルに「=AGGREGATE(14, 6, A1:A11, 3)」を入力します。
Excel関数
第1引数に指定した「14」とは、「LARGE関数」です。
LARGE関数の書式は、「LARGE(セル範囲,順位)」です。
第3、第4引数で指定した「A1:A11」、「3」という値が、それぞれ、LARGE関数の第1、第2引数となります。
その結果、指定したセル範囲内の3番目に大きい値が、エラー値を無視して求められます。
Excel関数
3行目を非表示(セルA3をアクティブセルにし、Ctrl + 9)にします。
Excel関数
セルに「=AGGREGATE(4, 6, A1:A11)」を入力します。
Excel関数
第1引数に指定した「4」とは、「MAX関数」です。
MAX関数の書式は、「MAX(セル範囲)」です。
第3引数で指定した「A1:A11」という値が、MAX関数の第1引数となります。
その結果、指定したセル範囲内の最大値が、エラー値を無視して求められます。
Excel関数
第2引数に指定した「6」とは、「エラー値を無視する」です。
今回の例では、エラー値のみを無視し、非表示にした行は計算の対象となっています。

セルに「=AGGREGATE(4, 7, A1:A11)」を入力します。
Excel関数
第2引数に指定した「7」とは、「非表示の行とエラー値を無視する」です。
今回の例では、指定したセル範囲内の非表示の行と、エラー値を無視して最大値が求められます。
Excel関数


注意事項

・2番目の参照引数を指定する必要があるときにこの引数が指定されていない場合、エラー値 #VALUE! が返されます。
・1つ以上の参照が3-D参照のとき、エラー値 #VALUE! が返されます。
・AGGREGATE関数は、列のデータ(縦の範囲)を集計します。行のデータ(横の範囲)を集計するための関数ではありません。行のデータを集計しようとした場合、期待した結果を得られない場合があります。


関連する関数

SUBTOTALVLOOKUP