経理業務をエクセルで行っていると、フィルターを使う場面はたくさんあります。
特定の条件に絞って数字を確認することはたくさんありますからね。
ただ、その時にエクセルのSUM関数で合計を表示していても、フィルターで条件を絞った状態の合計は集計してくれません。
フィルターで絞っていないセルの数字も合計してしまいます。
そんな時に役立つのがSUBTOTAL関数です。
フィルターをかけた時に、その条件に一致しているものの合計をしてくれる関数です。
説明の具体例も実務を想定して記載していますので、ぜひ参考にしてください。
SUBTOTAL関数の構成
エクセルのSUBTOTAL関数は次のような構成になっています。
集計方法は1~11の数字を入力します。それぞれの数字の意味は下記の表のとおりです。
集計方法 | 関数 |
1 | AVERAGE |
2 | COUNT |
3 | COUNTA |
4 | MAX |
5 | MIN |
6 | PRODUCT |
7 | STDEV |
8 | STDEVP |
9 | SUM |
10 | VAR |
11 | VARP |
見ていただければわかると思いますが、ほとんど使用する機会がないものも含まれています。
基本的に覚えておくのは2(COUNT)と9(SUM)だけ十分です。
他の集計方法はめったに使いませんので、使うときにこの記事に戻ってきて確認してください。
経理業務においては、エクセルのフィルターをかけて抽出された個数と合計さえわかれば、ほとんどの業務はこなせます。
なお、エクセルのSUBTOTAL関数の範囲は表の列をすべて選択しておけばOKです。
SUBTOTAL関数の具体例
では、エクセルのSUBTOTAL関数の使い方を具体例で説明します。
説明の便宜上、D~F列の数字はどの列もすべて同じものを入力しています。
数式で表示させると下記のようになります。
D列が普通のSUM関数
=SUM(D5:D18)
E列がSUBTOTAL関数で集計方法を9(SUM)にした関数
=SUBTOTAL(9,E5:E18)
F列が SUBTOTAL関数で集計方法を2(COUNT)にした関数
=SUBTOTAL(2,F5:F18)
では、この表のフィルターで住所が東京のみにしてみましょう。
結果は下記のようになります。
D列はもともとの合計値のままです。
フィルターをかけても全ての合計値を確認できるというメリットでもあるのですが、ここでは東京の合計が見たい場合がほとんどだと思いますので、不便ですよね。
E列はSUBTOTALを使用していますので、フィルターをかけた結果、表示されているセルだけの合計値が表示されています。特定の条件の合計が瞬時にわかるので便利ですよね。
F列もSUBTOTAL関数を使用していますので、フィルタをかけて表示されているセルの個数を計算しています。該当のものがいくつあるのか計算するときに便利です。
以上がエクセルのSUBTOTAL関数の使い方です。
ちなみにですが、フィルターを使うという性質上、表の上にSUBTOTAL関数を組む人が多いですね。
フィルターで合計した部分が隠れてしまっては意味がないですからね。
まとめ
エクセルのSUBTOTAL関数はフィルターをかける想定がある表にセットしておくと、いざフィルターを使ったときにとても便利です。
フィルターに関してはこちらの記事をご覧ください。
フィルターをかけなければ、ただのSUM関数やCOUNT関数と同じなので、特に不都合もないかと思います。
皆さんもこの関数を使って、業務効率化を図りましょう。
フィルターをかけるたびに電卓で計算していたら、仕事は進みませんよ。
エクセルをきっちり学びたい方はこちらの本もご覧ください。