エクセル術

フィルタを掛けた結果のみを計算する

40-1.png
Excelにはフィルタ機能というのがあります。指定したデータのみを抽出し表示する機能なんですが、その抽出されなかったデータというのは非表示扱いで隠れてしまいます。
が、非表示されるだけでデータ自体は存在しますので、たとえば合計を出すSUM関数を使うと、非表示部分も合計されてしまいます。
フィルタに掛かった結果のみ、表示されているデータのみを合計したい場合はどうしたら良いんでしょうか。

フィルタリングする


まずは上のデータをフィルタリングしてみます。消耗品費・修繕費のみを抽出したいと思います。

①A3からC10までを選択します ②フィルタボタンを押します ③科目フィルタの消耗・修繕以外チェックを外します。

するとこのような結果になります。
しかしです!金額欄を見てください。6,500+120,000+800の合計は127,300にならないといけません。

これがSUM関数。隠れている厚生費、交通費、旅費も合計してしまうんです。

ではどうすればいいの?

ここで使うのがSUBTOTAL関数です。
あまり聞き慣れない関数ですが、合計(SUM)だけでなく、COUNTやAVERAGE、最大値(MAX)、最小値(MIN)もこの関数一つで扱えます。
今回のパターンだと以下の式になります。

SUBTOTAL関数の引数は2つ。
=SUBTOTAL( 集計方法 , 範囲 ) です。
この集計方法というのは予め決められた番号があり、番号毎に集計方法が決まっています。SUMだと9です。下記の表を参考にしてください。

番号 集計方法
1 AVERAGE
2 COUNT
3 COUNTA
4 MAX
5 MIN
6 PRODUCT
7 STDEV
8 STDEVP
9 SUM
10 VAR
11 VARP

他の例を出すと、
=COUNT(C4:C10) の結果は 7 ですが
=SUBTOTAL(2,C4:C10) の結果だと 3 になります。

モバイルバージョンを終了