1. SUBTOTAL関数の基本情報
① SUBTOTAL関数とは?
「SUBTOTAL関数」は、表を集計するときに便利な関数です。
1つの関数で合計値、平均値、データの個数、最大値、最小値など様々な集計を行うことができます。
特に、下の画像のような「小計」を含む表の集計の時に大活躍する関数です。

② SUBTOTAL関数の書式
=SUBTOTAL(集計方法,参照1,参照2,…,参照254)
| 集計方法 | 集計方法を入力する部分です。集計方法を数字で入力します。 目的に応じて1~11、101~111の数字のどれかを入力します。 |
| 参照 | 集計するセルを選択する部分です。最大254個まで設定することができます。 |
「集計方法」には次に紹介する1~11, 101~111の数字のどれかを入れます。
それぞれの番号に決められた集計方法があり、入れた数字によって「参照」のデータを集計する方法が変わります。
2. SUBTOTAL関数の集計方法一覧
① 非表示の値も含める集計
Excelでは、フィルタなどを利用して、指定した列や行を一時的に見えない状態にすることができます。
初めに紹介する以下の集計方法は非表示のセルの値も含めて集計する集計方法です。1~11までの番号があります。
| 集計方法 | 集計方法の説明 | 同じ機能の関数 |
| 1 | 平均値を求める | AVERAGE |
| 2 | 数値の個数を求める | COUNT |
| 3 | データの個数を求める | COUNTA |
| 4 | 最大値を求める | MAX |
| 5 | 最小値を求める | MIN |
| 6 | 積を求める | PRODUCT |
| 7 | 不変標準偏差を求める | STDEV |
| 8 | 標本標準偏差を求める | STDEVP |
| 9 | 合計値(和)を求める | SUM |
| 10 | 不変分散を求める | VAR |
| 11 | 標本分散を求める | VARP |
② 非表示の値を無視する集計
次に、非表示にしたセルの値は無視して集計する集計方法の一覧を乗せます。
「フィルタ」などで非表示にしたデータは集計しません。
フィルタで選択した項目のみ集計結果を見たい時などに利用します。101~111までの番号があります。
| 集計方法 | 集計方法の説明 | 同じ機能の関数 |
| 101 | 平均値を求める | AVERAGE |
| 102 | 数値の個数を求める | COUNT |
| 103 | データの個数を求める | COUNTA |
| 104 | 最大値を求める | MAX |
| 105 | 最小値を求める | MIN |
| 106 | 積を求める | PRODUCT |
| 107 | 不変標準偏差を求める | STDEV |
| 108 | 標本標準偏差を求める | STDEVP |
| 109 | 合計値(和)を求める | SUM |
| 110 | 不変分散を求める | VAR11 |
| 111 | 標本分散を求める | VARP |
3. SUBTOTAL関数の使い方
① 小計と合計を求める
下の画像のような「小計」を含む表では、SUM関数ではなく、SUBTOTAL関数を利用しましょう。
SUBTOTAL関数は「参照にSUBTOTAL関数を含むセルがあった場合、その部分を集計から除く」という特徴があります。
そのため、小計・合計の集計にどちらもSUBTOTAL関数を使用することで、合計が簡単にできるようになります。
下の画像の場合は合計を求めるセルに「=SUBTOTAL(109,D3:D16)」と入力するだけで1月~3月の売上額の合計を求めることができます。

② フィルタを利用して集計する項目を絞る
「フィルタ」とSUBTOTAL関数を併用することで、自分がフィルタで選択した項目のみの集計結果をすぐに見ることができます。
例えば、下の表で売上額の合計をSUBTOTAL関数で求めたとします。

この場合、合計を求めるセルに入力する関数は「=SUBTOTAL(109,D3:D13)」となります。
ここでポイントとなるのは、「非表示の値を無視する集計方法を利用する」ことです。そのため、引数の集計方法には「9」ではなく「109」を入力します。

この状態でダイコンのみの売上額を見てみましょう。商品名のフィルタ(▼マーク)をクリックしてダイコンのみチェックを入れ、「OK」を押します。

すると、ダイコンのみの売上額の合計が一瞬で求められました。
