SUBTOTAL関数の詳細解説(Excel)

ExcelのSUBTOTAL関数の使い方

ExcelのSUBTOTAL関数は、指定された範囲のデータに対して様々な集計方法を適用できる便利な関数です。この記事では、SUBTOTAL関数の使い方について説明し、初級者でも理解できるようなサンプルを用意しています。

SUBTOTAL関数の構文

SUBTOTAL関数の構文は以下の通りです。

SUBTOTAL(集計方法,範囲 1,[範囲 2],...)

ここで、引数の「集計方法」、「範囲1」、「範囲2」などには、それぞれ適切な値を入力します。

SUBTOTAL関数の引数

SUBTOTAL関数の引数について詳しく説明します。

集計方法
データの集計方法を指定する数値です。1から11までの整数を指定し、それぞれ異なる集計方法に対応しています。以下の表に各整数と対応する集計方法を示します。

数値集計方法
1AVERAGE
2COUNT
3COUNTA
4MAX
5MIN
6PRODUCT
7STDEV
8STDEVP
9SUM
10VAR
11VARP
範囲1、範囲2,…
集計方法を適用するセル範囲を指定します。複数の範囲を指定することもできます。

SUBTOTAL関数の基本サンプル

ここではSUBTOTAL関数を使った簡単なサンプルを紹介します。次の表のデータを用いて、年齢の合計を計算してみましょう。

ABC
1名前性別年齢
2山田34
3佐々岡25
4岸川28

この表の年齢データ(C2:C4)の合計を計算するには、SUBTOTAL関数を使って次のように入力します。

=SUBTOTAL(9, C2:C4)

ここで、集計方法として9(SUM)を指定し、範囲としてC2:C4を指定しています。この計算式を入力すると、結果として87が返ります(34 + 25 + 28 = 87)。

SUBTOTAL関数を使用することのメリット

SUBTOTAL関数を使用することのメリットは以下の通りです。

  1. 範囲内のフィルタリングされたデータのみを集計できる: Excelでデータをフィルタリングして表示している場合、SUBTOTAL関数はフィルタリングされたデータ(表示されているデータ)のみを対象に集計を行います。これに対して、通常の集計関数(SUM, AVERAGE, MAX, MINなど)はフィルタリングされたデータに関係なく、すべてのデータを対象に集計を行います。
  2. 複数の集計方法を1つの関数で利用できる: SUBTOTAL関数は、さまざまな集計方法(合計、平均、最大値、最小値など)を1つの関数で実現できます。集計方法を変更する場合は、関数の引数を変更するだけで簡単に対応できます。
  3. 入れ子になったSUBTOTAL関数を回避する: SUBTOTAL関数は、他のSUBTOTAL関数によって計算された値を無視して集計を行います。これにより、集計結果が重複してカウントされることを防ぎます。通常の集計関数を使用すると、入れ子になった集計関数の結果も集計対象となってしまい、正確な結果が得られないことがあります。

これらのメリットから、特にデータのフィルタリングや入れ子になった集計を行う際には、SUBTOTAL関数が便利であることがわかります。

フィルタリング時の具体例

ここで、以下のような表を例に、SUBTOTAL関数を使うメリットを具体的に説明します。

ABC
1名前性別売上
2山田10000
3佐々岡15000
4岸川8000
5田中12000

性別(列B)でデータをフィルタリングして、女性のみの売上(列C)を合計したい場合、SUBTOTAL関数を使うと次のようになります。

=SUBTOTAL(9, C2:C5)

この場合、フィルタリングされたデータ(佐々岡と田中)の売上合計(15,000 + 12,000 = 27,000)が得られます。通常のSUM関数を使っても、フィルタリングされていないデータ全体の合計が計算されます。

また、平均値を求める場合は、SUBTOTAL関数の引数を変更するだけで簡単に計算できます。

=SUBTOTAL(1, C2:C5)

この場合、フィルタリングされたデータ(佐々岡と田中)の売上平均((15,000 + 12,000) / 2 = 13,500)が得られます。

これらの例から、SUBTOTAL関数を使うことで、フィルタリングされたデータの集計や複数の集計方法を簡単に実現できることがわかります。

まとめ

この記事では、ExcelのSUBTOTAL関数の使い方を解説しました。構文や引数の説明、そして具体的なサンプルを通じて、初級者でも理解しやすい内容となっています。SUBTOTAL関数は、さまざまな集計方法を簡単に適用できる便利な関数ですので、ぜひ活用してください。