Excelで集計をしていると、「エラー値が混ざっていて合計が出せない」
「非表示のデータを除いて集計したい」といった場面はありませんか?
SUBTOTAL関数でも非表示行の除外はできますが、エラー値までは無視できません。
そこで便利なのが、エラー値や非表示行を無視して柔軟に集計できる AGGREGATE関数 です。
AGGREGATE関数とは
AGGREGATE関数は、指定した集計方法(合計・平均・最大値など)を使って、エラー値や非表示の行を無視しながら集計できる関数です。
SUBTOTAL関数の上位版のような位置づけで、より高度な条件で集計を行えます。
さらに、SUBTOTAL関数で使用できる集計(合計・平均など)もすべて対応しており、それに加えてエラー無視などの拡張機能が使えるのが特徴です。
書式
=AGGREGATE(集計方法, オプション, 範囲1, [範囲2], …)
引数の説明
- 集計方法:使用する関数を「番号」で指定(例:9=SUM、4=MAXなど)
- オプション:無視する対象を指定(例:6=エラー値を無視、7=エラー+非表示を無視)
- 範囲:集計対象のセル範囲を指定
関数番号一覧
| 関数番号 | 関数名 | 説明 |
|---|---|---|
| 1 | AVERAGE | 平均値を返す |
| 2 | COUNT | 数値が入力されているセルの個数を返す |
| 3 | COUNTA | 空白でないセルの個数を返す |
| 4 | MAX | 最大値を返す |
| 5 | MIN | 最小値を返す |
| 6 | PRODUCT | 積(掛け算の結果)を返す |
| 7 | STDEV.S | 標本標準偏差を返す(STDEV関数と同じ) |
| 8 | STDEV.P | 母集団標準偏差を返す(STDEVP関数と同じ) |
| 9 | SUM | 合計値を返す |
| 10 | VAR.S | 標本分散を返す(VAR関数と同じ) |
| 11 | VAR.P | 母集団分散を返す(VARP関数と同じ) |
| 12 | MEDIAN | 中央値を返す |
| 13 | MODE.SNGL | 最頻値(1つ)を返す |
| 14 | LARGE | n番目に大きい値を返す(nは第4引数) |
| 15 | SMALL | n番目に小さい値を返す(nは第4引数) |
| 16 | PERCENTILE.INC | 百分位数(0〜100%)を返す |
| 17 | QUARTILE.INC | 四分位数を返す(0〜4で指定) |
| 18 | PERCENTILE.EXC | 百分位数(0〜100%未満)を返す |
| 19 | QUARTILE.EXC | 四分位数を返す |
オプション一覧
| オプション値 | 動作 |
|---|---|
| 0 または省略 | ネストされた SUBTOTAL 関数と AGGREGATE 関数を無視 |
| 1 | 非表示の行、ネストされた SUBTOTAL 関数と AGGREGATE 関数を無視 |
| 2 | エラー値、ネストされた SUBTOTAL 関数と AGGREGATE 関数を無視 |
| 3 | 非表示の行、エラー値、ネストされた SUBTOTAL 関数と AGGREGATE 関数を無視 |
| 4 | なし(すべて含める) |
| 5 | 非表示の行を無視 |
| 6 | エラー値を無視 |
| 7 | 非表示の行とエラー値を無視 |
AGGREGATE関数の使い方
例:エラー値を無視して集計する

=AGGREGATE(9,6,C3:C7)
この例では、AGGREGATE関数の「9(SUM)」を使って「果物」の合計を求めています。
通常、SUM関数やSUBTOTAL関数でこのようなデータを集計すると、#DIV/0! のようなエラーが含まれているため計算できずエラーになります。

しかし、AGGREGATE関数では第2引数に「6(エラー値を無視)」を指定することで、エラーを除外して計算できます。
その結果、「100 + 200 + 300 + 400 = 1000」と正しく集計されます。

このようにAGGREGATE関数は、データにエラーが混ざっていてもそのまま集計できるのが最大の強みです。
SUBTOTALとの違い
- SUBTOTAL:非表示行は無視できるが、エラーは無視できない
- AGGREGATE:非表示+エラーの両方を無視できる
関連関数
| 関数名 | 特徴 |
|---|---|
| SUBTOTAL関数 | フィルターで非表示の行を除外して集計する |
| SUM関数 | 数値の合計を求める基本関数 |
| AVERAGE関数 | 平均値を求める |
| LARGE関数 | 大きい順に値を取得する |
| SMALL関数 | 小さい順に値を取得する |
まとめ
AGGREGATE関数は、集計しながら特定条件のデータを無視できる柔軟な関数です。フィルター付きデータやエラー混在のリストなど、実務でも非常に役立ちます。
同様にフィルターされたデータを対象に集計できる SUBTOTAL関数 もあり、こちらは指定した集計番号によって合計や平均、最大・最小値などを計算しながら、フィルターで非表示になった行や手動で非表示にした行を除外するかどうかを選択できます。
両者を使い分けることで、データの状態に応じた集計が可能となり、より効率的な分析が実現できます。
関連記事:SUBTOTAL関数の使い方



Excel人気記事