📊つかえる関数.com

フィルターで絞り込んだ結果だけを合計する方法は?

結論

SUBTOTAL関数(109)でフィルター適用後の可視セルのみを集計できます。AGGREGATE関数はエラー値も無視できます。

データ分析中級·

詳しい解説

フィルターで絞り込んだ可視セルのみを集計するにはSUBTOTAL関数を使用します。`=SUBTOTAL(109, C2:C100)`のように、第1引数に109(非表示行を除くSUM)を指定することで、フィルター適用後の表示行のみが合計されます。通常のSUM関数では非表示行も含めて合計されてしまいます。AGGREGATE関数を使う方法もあり、`=AGGREGATE(9, 5, C2:C100)`とすることでエラー値も無視して集計できます。オートフィルター適用後の売上合計や、手動で非表示にした行を除外した集計に使用します。第1引数の百の位が1の場合(101〜111)は非表示行も含み、百の位が0の場合(1〜11)は手動非表示のみ除外されます。

執筆・検証:田中 けんた|Excel歴15年・MOS資格保持

バージョン対応

バージョン対応状況
Excel 2016Excel 2019Excel 2021Excel 2024Microsoft 365
対応対応対応対応対応

実務での使用例

オートフィルター適用後の売上合計

フィルターで特定の営業部や期間に絞り込んだ後、表示されている行の売上(C列)のみを合計。フィルターを変更すると自動的に再計算される

=SUBTOTAL(109, C2:C100)

エラー値を無視した集計(AGGREGATE)

データにエラー値(#N/A、#DIV/0!など)が含まれていても、それを無視して平均を計算。第2引数5はエラーと非表示行を無視

=AGGREGATE(1, 5, C2:C100)