エクセルの機能に「フィルタ機能」があります。

この機能は前回の記事で使い方を詳しく解説しています。
【フィルタ機能:エクセル】必要な情報だけで表示、並べ替えるフィルタの使い方

しかし、フィルタ機能を使う際、1つの問題点があります。
それは、一般的な関数と組み合わせることが難しい点です。

どういったことなのか、順を追って解説していきます。


SUBTOTAL関数はこんな時に役に立つ!



  • フィルタ機能使用時、一般的な関数(SUM、AVERAGEなど)が使えない
  • しかし、SUBTOTAL関数だと一般的な関数の代用になる
  • フィルタ機能を使っても関数を多用したい

フィルタ機能を使うと必ず必要となるのが合計の算出や平均の算出
その際、一般的な関数では算出することは不可能ですが、
「SUBTOTAL関数」を使えばフィルタ機能でも同様の算出結果を得られます。

フィルタ機能とSUBTOTAL関数はセットで覚えておきましょう。

それでは、SUBTOTAL関数の基本的な使い方について解説していきます。


SUBTOTAL関数の基本的な使い方について

SUBTOTAL関数の数式は下記のように表されます。

SUBTOTAL(集計方法,参照1,…)

SUBTOTAL関数は、2つの条件が指定されます。

集計方法:「1」~「11」までの集計方法を指定することが可能です。
     (101以降にも集計方法がありますが、1~11と同じ方法になります)
     例えば、「1」を指定すると、表記の通り「AVERAGE」と同じ集計方法になります。
参照1…:AVERAGE関数で言うところのセル範囲に当たります。

SUBTOTAL関数の活用事例を見ながらその効果について検証していきましょう。


SUBTOTAL関数の活用事例について



上図は、商店ごとに品目の値段を記した表になります。

「SUBTOTAL関数」と「AVERAGE関数」の2つの関数を用いて、
出力結果を比較する
ために記します。

フィルタ機能使用前(上図)だと平均値はどちらも同値です。
しかし、これがフィルタ機能を使うとどうかるか。



品目「魚」をフィルタ指定した結果が上図になります。
ここで見ていただきたいのが、「SUBTOTAL関数」と「AVERAGE関数」の出力結果の違いです。

A商店の結果を例に見てみると、
「SUBTOTAL関数」では、平均値108.3
「AVERAGE関数」では、平均値129.4 と最初と同値です。

つまり、「SUBTOTAL関数」を使うと
フィルタ機能で集計された数値のみを使って平均値を算出させることが可能だということです!

実際、手計算してみると
(100+105+120)/3 = 108.3 と間違いなく平均値が算出されています。

これは、SUBTOTAL関数の集計方法「SUM」を使っても同じような結果が得られます。

フィルタ機能を活用する際は、SUBTOTAL関数は必要不可欠な関数であることが
お分かりいただけたかと思います。


フィルタ機能とセットで活用されるSUBTOTAL関数 まとめ

SUBTOTAL関数の使い方、活用事例について解説してきました。

SUBTOTAL関数はフィルタ機能活用時に大いに役立つ関数です。

さらに、SUBTOTAL関数の魅力は、
SUBTOTAL関数だけでSUMもAVERAGEも使うことができる点です。

変に使い分ける必要もないため、大変便利な関数です。

エクセルに慣れてくると必ずフィルタ機能は使う機会が出てきます。
その際、SUBTOTAL関数はセットで使うことになる関数であるため、必ず覚えておきましょう。