Excelにはオートフィルタという便利機能がある。表題に表示されるオートフィルタ矢印をクリックして、リストから目的のデータを選択するだけで、簡単にデータの絞り込みが行えるスグレモノだ。

 オートフィルタを使うには、「データ」メニューの「フィルタ」→「オートフィルタ」で設定する。図1は簡単なデータベースにオートフィルタを設定したところ。現在はすべてのデータが表示されているので、A列のフィルタで住所が「東京」のデータだけを表示してみよう(図2)。見事に抽出が行われた。だが、ちょっと待ってほしい。合計欄の数字がおかしい。SUM関数を入力したD10セルは、非表示のデータまで合計しているではないか。これでは使い物にならない。

 こんなときは、SUM関数ではなくSUBTOTAL関数を使おう。SUBTOTAL関数は、非表示のデータを計算対象から除外してさまざまな計算を行うマルチ関数だ。計算の種類は、第1引数で指定する。今回使うのは、SUBTOTAL(9,D2:D8)で、指定した範囲の合計を計算せよという命令だ(図3)。このほか、SUBTOTAL(1,D2:D8)はデータの平均を計算し、SUBTOTAL(2,D2:D8)ならデータの個数をカウントする。詳しくはオンラインヘルプを参照していただきたい。

図1 データを絞り込むときに便利なオートフィルタ機能


図2 住所の項目で絞り込んだが、SUM関数は全てのデータを合計している


図3 SUBTOTAL関数は、非表示データを合計の対象から除外する性質を持つ