Excelでフィルター後の合計が変わらない

Excelでフィルター後の合計が変わらない

記事
IT・テクノロジー
カテゴリ:Excel

担当者や商品で絞り込んだのに、合計金額が変わらない。SUMは、フィルターで見えなくなった行も合計します。表示中の行だけを足したいときは、SUBTOTALを使います。

すでにフィルターで絞り込めている、縦に並んだ数値の金額明細が対象です。元の明細とSUMを残し、空いているセルで比べてみましょう。

1.明細全体の範囲を確かめる

ここではB2が1000、B3が2000、B4が1500の例で説明します。今の合計式が次の場合、全件の合計は4500です。

=SUM(B2:B4)

フィルターでB3の行を除いても、SUMは4500のままです。式のB2:B4は、自分の表の金額範囲に読み替えてください。

2.空きセルで表示行の合計を出す

表の外の空いているD6に、次の式を入れます。D6にデータがあれば、別の空きセルを使ってください。

=SUBTOTAL(109,B2:B4)

109は、フィルターで除かれた行と、手動で非表示にした行を除いて合計する指定です。

範囲には、見えなくなった行も含めた明細全体を指定します。今見えているセルだけを拾う必要はありません。合計セル自身は範囲に含めないでください。

3.表示中の金額と比べる

この例でB3の2000がフィルターで除かれ、1000と1500が表示されていれば、SUBTOTALの結果は2500です。

02_表示行だけを合計_計算図.png
元のSUMは4500、表示行のSUBTOTALは2500。表示されている金額を足した結果と一致すれば、確認できています。照合後は、表示行の合計を出したいセルに同じSUBTOTALの式を使えます。元の明細は変更しません。

絞り込み条件を変えると、この合計も変わります。明細を追加したときは、新しい行まで範囲に入っているか確認してください。

補足:手動で隠した行も含めたいとき

109を9に変えると、手動で非表示にした行も合計に含まれます。フィルターで除かれた行は、どちらも含みません。

先ほどの状態で1500の行も手動で隠れている場合、109なら1000、9なら2500です。

これは縦方向の明細を合計する方法です。横に並んだ金額の列を非表示にしても、その金額を同じようには除外できません。

カスタマイズやご要望がある場合は、お気軽にご相談ください。

サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す