【Excel】SUBTOTAL関数でフィルタに対応した集計をおこなう
SUBTOTAL関数とは
SUBTOTAL関数は、Excelでデータを集計する際に便利な関数で、特にフィルタを適用したデータに対して適切に計算を行うことができます。
SUBTOTAL関数の構文
SUBTOTAL関数は以下の構文で使用します。
SUBTOTAL(集計方法, 範囲1, [範囲2], ...)
ここで、集計方法には1~11または101~111の数値を指定します。
利用できる集計関数
SUBTOTAL関数では以下のような集計方法を指定できます。
- 1 または 101: 平均 (AVERAGE)
- 2 または 102: 数値の個数 (COUNT)
- 3 または 103: 空白以外の個数 (COUNTA)
- 9 または 109: 合計 (SUM)
- その他、多くの関数が使用可能
基本的な使用例
例えば、A1:A10の合計を求めるには次のように記述します。
=SUBTOTAL(9, A1:A10)
フィルタ適用時の動作
SUBTOTAL関数の利点は、フィルタを適用した際に隠れた行を計算に含めないことです。
例えば、次のようにSUMを使った場合と比較できます。
=SUM(A1:A10) // フィルタに関係なくすべての値を合計
=SUBTOTAL(9, A1:A10) // フィルタ適用時に表示されている値のみ合計
応用例:表の合計と平均
売上データの表に対して、合計と平均を求める場合、次のように使用します。
売上データ
A列: 商品名 | B列: 売上
"商品A" 1000
"商品B" 2000
"商品C" 1500
合計: =SUBTOTAL(9, B2:B10)
平均: =SUBTOTAL(1, B2:B10)
SUBTOTAL関数のメリット
SUBTOTAL関数には以下のようなメリットがあります。
- フィルタ適用時に表示されているデータのみを集計可能
- 合計、平均、カウントなど多様な計算が可能
- 隠れたデータを含むかどうかを選択できる