トップ > コラム > 記事

AI活用

Excelでフィルター後の
合計が
変わらない
とき|SUBTOTALの
9と109を確認する

公開日:2026年11月9日

執筆:

Excelでフィルター後の合計が変わらないとき|SUBTOTALの9と109を確認する

Excelで部門を絞ったのに、合計が元の金額のままになっている。そこでSUBTOTALへ変えても、手で隠した行まで含むのか、追加した最終行まで参照しているのかによって、求める小計とは違う数字になります。

最初に決めるのは「何を足したいか」です。画面に見えている行だけと、フィルターに残る行すべて(手動非表示を含む)では対象が違います。関数番号を選ぶ前に、この二つを分けて依頼します。

この記事では、同じ架空の6行を使い、フィルター除外・手動非表示・数式の参照範囲を照合します。金額は公式の関数仕様に沿って通常の算術で検算した期待値です。ExcelやOfficeでの数式実行、実画面の操作・再計算・CSV読込試験は行っていません。

この記事で分かること

  • フィルター除外と手動非表示を分け、求める行からSUBTOTALの9と109を選びます
  • 同じ架空6行で式と参照範囲を照合し、追加した行の参照漏れを確かめます
  • 表示された小計と業務上の確定合計を分け、不明な条件は担当者へ確認します

合計を変える前に、
元の式と求める行を控える

原ブックをコピーして保全し、合計セルの実際の式、対象列、先頭と末尾のセルを控えます。「合計」という見出しだけでは、SUMなのかSUBTOTALなのか、どの範囲を見ているのかは分かりません。

Excelのテーブルの集計行も、見た目だけで決めないでください。Microsoftは、Excelテーブルの集計行の説明で、SUBTOTALを使う既定の選択肢に加えて、ほかの関数も使えると案内しています。自分の表に入っている式を読みます。

今回の原記録はA列が記録ID、B列が部門、C列が業務状態、D列が金額です。1行目が見出し、2〜7行目がデータで、金額の全範囲はD2:D7。6件の金額はすべて通常の数値です。ここでのA〜D列とセル番地は、架空の元ブック上の配置です。配布する原記録CSVは照合情報を加えた8列で、D列はdepartment(部門)、F列はamount_yen(金額)です。amount_cell列のD2〜D7は元ブックの番地を記録した値であり、このCSVへD2:D7の式をそのまま適用する取込表ではありません。以下の行番号・状態・金額は、この説明用に作った架空の指定です。

記録ID・セル 部門 業務状態 金額 フィルター除外 手動非表示
R01・D2 北 確定 1,200円 なし なし
R02・D3 北 確定 800円 なし あり
R03・D4 南 確定 500円 あり なし
R04・D5 北 取消 300円 なし なし
R05・D6 南 確定 700円 あり あり
R06・D7 北 確定 1,000円 なし なし
R02の800円は手動非表示のみ。R05の700円はフィルター除外と手動非表示の両方に該当するが、元の行は1件。
架空の表示状態の説明図です。R05を二度差し引きません。実Excel画面や操作結果ではありません。

部門を「北」に絞るため、南のR03・R05はフィルターで除外されます。それとは別に、R02・R05には手動非表示の記録がある前提です。R05は両方の指定が重なっていますが、元の行は一つです。どちらの理由でも非表示だからといって、700円を二度差し引きません。

この表示状態は架空例の入力条件として明示したものです。実務では、行が見えないことだけから原因を推測せず、フィルター条件と手動非表示の指定を別々に確かめます。

9と109は、手動非表示を
含めるかで選ぶ

MicrosoftのSUBTOTALの仕様では、合計に使う番号は9と109です。どちらもフィルターで除外された行を含みません。一方、手動非表示の行は9では含み、109では含みません。

この違いを、今回の依頼へ当てはめます。金額の列と範囲を変えずに、求める行だけを先に列挙します。

求める小計 含める記録ID 手計算の期待値 固定条件に合う式の案
フィルターに残る全行。手動非表示も含む R01・R02・R04・R06 1,200+800+300+1,000=3,300円 =SUBTOTAL(9,D2:D7)
現在見えている行だけ。手動非表示を含めない R01・R04・R06 1,200+300+1,000=2,500円 =SUBTOTAL(109,D2:D7)
同じD2:D7で9はR01・R02・R04・R06の3300円、109はR01・R04・R06の2500円に対応する算術例。差はR02の800円。
同じ原記録と固定された表示条件からの算術期待値です。業務上の確定合計やExcel実測値を示すものではありません。

差額の800円は、北に属し、手動非表示だけが指定されたR02です。南のR05はフィルターでも除外されるため、9と109のどちらにも入りません。今回の差を説明するためにR05の700円を使うと、非表示の理由を取り違えています。

「見えている行だけ」と頼まれたなら、上の固定条件では109の案になります。ただし、番号だけを覚えてすべての合計セルへ置き換えるのではなく、実際の範囲と依頼の意味も確認してください。手動非表示を含めたい集計に109を使うと、必要なR02を落とします。

合計が変わらない理由を、
式と範囲から分ける

MicrosoftのSUMの説明では、SUMは指定した値やセル範囲を加算する関数です。表示されているセルだけの合計については、SUBTOTALが案内されています。

この架空例で、元の合計セルに=SUM(D2:D7)が入っているなら、範囲内の6件を足す算術は4,500円です。フィルターで画面から消えた行の値が、元の範囲から削除されたわけではありません。見えている行の2,500円とは、そもそも足している集合が違います。

次の4案は同じ原記録を比較したものです。「式側の期待値」は実Excelの観測値ではなく、指定範囲と仕様に沿った検算値です。

確認ID 控えた式 式側の期待値 依頼との照合
F01 =SUM(D2:D7) 全6件で4,500円 見えている行だけの2,500円とは不一致
F02 =SUBTOTAL(9,D2:D7) R01・R02・R04・R06で3,300円 手動非表示を含める依頼なら一致
F03 =SUBTOTAL(109,D2:D7) R01・R04・R06で2,500円 見えている行だけの依頼に一致
F04 =SUBTOTAL(109,D2:D6) R01・R04で1,500円 末尾のR06が参照外。依頼の2,500円と不一致

F04は109を使っていても、最終セルがD6で止まっています。D7のR06、1,000円が入らないため、F03との差額は1,000円です。関数番号の変更だけでは直りません。依頼が全6行を対象にしていることを確認してから、参照範囲をD2:D7にする案を渡します。

109でもD2:D6では末尾D7のR06が参照外で1500円。依頼範囲D2:D7なら2500円に対応し、差は1000円。
式の参照末尾を照合する説明図です。実ファイルを自動修正したり、Excelで数式を実行したりしていません。

範囲を広げるときも、末尾へ無条件に足し続けないでください。別表や集計セルまで含まないかを確認します。この例は単一の縦範囲にある通常の数値だけを扱い、途中の入れ子小計や別シートをまたぐ参照は含めていません。

見えている小計を、
確定済みの業務合計と呼ばない

現在見えているR04は「取消」ですが、表示小計の条件は業務状態を見ていません。そのため、F03の2,500円にはR04の300円も含みます。SUBTOTALを109に変えただけで、取消の処理まで済むわけではありません。

もし依頼が「北部門の確定済みだけ」なら、対象はR01・R02・R06で、合計は3,000円です。手動非表示のR02を含み、表示されている取消のR04を除くため、見えている行の集合とは一致しません。

この業務条件の決め方は、Excel月次集計で重複・取消・空欄を確かめる方法で扱っています。確定合計が欲しいときは、そちらのように対象状態を決めて集計します。行を隠す操作を取消の代わりに使ったり、見えている小計をそのまま月次の確定値と呼んだりしないでください。

フィルターや非表示は、元データの削除でも閲覧権限の設定でもありません。表示の都合と、業務上採用する記録の条件を別に残すことが必要です。

不明な条件があれば、
式の変更を保留する

合計だけが送られてきて、式や範囲が分からない場合は、SUMから109へ変える案を確定できません。非表示の理由が不明な場合や、依頼が手動非表示を含むか決まっていない場合も同じです。

確認相手には、直す数式より先に、次の情報を求めます。これは未送信の依頼文例です。

合計の対象を確認したいので、原ブックを保全したうえで、
合計セルの現在の数式と参照範囲を教えてください。
求めるのは「見えている行だけ」でしょうか、
「フィルターに残る全行(手動非表示を含む)」でしょうか。
フィルターで除外された行と、手動非表示の行も別々に確認したいです。
確定/取消などの業務状態を条件にする場合は、その条件もお願いします。
確認できるまでは、元の式や行を変更しません。

この例は、横方向の範囲、非表示列、文字列になった金額、空欄・エラー、入れ子のSUBTOTALなどの診断を含みません。MicrosoftもSUBTOTALを縦範囲向けに説明しています。条件が違う表へ、そのまま計算結果を当てはめないでください。

確認シートを使い、
式だけ
でなく対象IDを読み戻す

配布物は、原記録と表示状態を控える表、式と依頼を比べる表、手読メモの最小構成です。空欄CSVは見出しだけなので、架空例を消す作業から始める必要はありません。

CSVはブックのフィルターや非表示設定を実行するファイルではありません。true/falseは、この例の指定を記録した値です。数式の欄にも「式: 」という接頭辞を付け、CSVを開いただけで計算する数式として渡さない形にしています。

最初は原記録CSVのR01〜R06を一行ずつ読み、依頼に含むIDへ印を付けます。次に確認CSVの式の参照範囲と対象IDを比べ、最後に金額を足します。2,500円という金額が合うだけでなく、R01・R04・R06を足しているかまで読み戻してください。

実際のブックへの変更は、依頼の意味・表示状態・範囲を確認した担当者が行う次の工程です。この配布物や算術検算は、Officeでの実行・互換性・表示検査の代わりにはなりません。

よくある質問

Q. フィルターで隠れた行と、手で隠した行は同じ扱いですか?

A. SUBTOTALでは区別します。

9と109はどちらもフィルターで除外された行を含みません。

手動非表示の行は9では含み、109では含まないため、依頼の意味に合わせて選びます。

Q. 109を使えば、画面に見えている金額へ必ず合いますか?

A. 関数番号だけでは決まりません。

今回のF04は109でもD2:D6しか参照せず、D7のR06が入りません。

実際の式・範囲・非表示状態と、求める対象行を確認する必要があります。

Q. 取消の行を非表示にすれば、確定合計として使えますか?

A. 非表示を業務状態の代わりにはしません。

見えている行の小計と、確定済みだけの合計は別です。

対象状態を条件として定め、取消や未確認の記録も元データに残して照合します。

無料相談

業務のAI化を相談したい方へ

現在の資料や使っているツールをもとに、AIで減らせる作業と連携方法を整理します。

この記事の執筆者と編集部

執筆

Web制作・デザイン出身。AIを使ったアプリ開発と業務自動化を、設計から実装まで担当しています。自ら開発・運用する経験をもとに、仕事でAIを使う手順と注意点を解説します。

プロフィールを見る

編集・検証

まるっとAI編集部

本文中の資料・図は説明用の例と、出典を示した公開情報を分けて掲載しています。