Excelにはシートの一部を抽出するフィルター機能があります。フィルターのことをまず学びたいという方は、こちらの記事を参考にしてください。
今回は、このフィルターを利用する際に知っておくと得する関数の解説をします。
その名はSUBTOTAL関数です。
フィルターで抽出したデータの合計を計算するときに
ここに電化製品の売り上げ(という設定)のリストがあります。
画像の右下に売り上げの合計が記されています。これはSUM関数で計算をしたものです。
セルの編集を開けばSUM関数が入力されていることがわかります。
ではここで、フィルター機能を使って種類が「掃除機」となっている商品のデータだけを抽出してみます。
上の画面のように「掃除機」だけを表示するように、フィルターの設定をします。
フィルターにより「掃除機」のデータだけが表示されるようになりました。しかし、画像右下を見ると、売上合計は全商品の売上合計を表示しているままです。
フィルターは抽出したデータ以外のセルを非表示にするだけで、削除するわけではありません。
売上合計のセルの関数がSUMで、全商品の売上の合計を計算するようになっているのは変わっていないので計算結果も変わらないのです。
それって不便だなあ フィルターでデータを抽出した時に、抽出されたデータだけの合計を表示させることってできないの?
ずばりできます。それがSUBTOTAL関数です。
売上合計のセルにSUBTOTAL関数を入力してみましょう。「SUB」と入力すれば、予測候補にSUBTOTALが現れます。選択するときは、マウスで「SUBTOTAL」をクリックするか矢印キーで選択範囲を動かしてTABキーで決定しましょう。
予測候補から入力するときは、決定はTABキーでないとダメだぞ。
ENTERキーを押してしまうと、セルへの入力自体を決定してしまうから、正しい関数入力ができないぞ。
SUBTOTALと入力したら、その次は集計方法の入力です。SUBTOTAL関数を使用するには、どんな計算をするかを特定の数字を入力することで定める必要があります。
今回は、SUM関数で行える合計の計算をしたいので、「9」と入力します。予測候補が現れますが、キーボードで直接「9」と入力した方が早いでしょう。
集計方法を入力したら、「,」(コンマ)を挟んで、計算範囲を入力します。マウスで計算したい範囲をドラッグすれば入力できます。このとき、全商品の売り上げを選択できるよう、フィルターによる抽出を解除しておきましょう。
キーボードでセル番号を直接入力すれば、フィルターを解除しなくてもすみますが、セル番号を間違える可能性があるので、当ブログではマウスのドラッグによる方法を推奨します。
SUBTOTAL関数の入力を確定させて、再びフィルターで「掃除機」のデータだけを抽出すると、このように掃除機の売り上げの合計だけが、セルに表示されるようになりました。
抽出するデータを変えれば、合計の数字も自動で計算し直されるのでとても便利です。
SUBTOTAL関数の集計方法一覧
今回はSUM関数でできる合計の計算を利用しましたが、SUBTOTAL関数は合計を求める以外の計算にも利用できます。
以下に対応する集計方法の一覧を掲載します。
集計方法 | 関数 | 意味 |
1 | AVERAGE | 平均を求める |
2 | COUNT | 数値の個数を求める |
3 | COUNTA | 空白以外のデータの個数を求める |
4 | MAX | 最大値を求める |
5 | MIN | 最小値を求める |
6 | PRODUCT | 積を求める |
7 | STDEV | 標本標準偏差を求める |
8 | STDEVP | 標準偏差を求める |
9 | SUM | 合計を求める |
10 | VAR | 分散の推定値を求める |
11 | VARP | 分散を求める |