Excel Table SUBTOTAL

If you just need to excel table subtotal and move on, the boxed answer at the top is all you need. The rest of this page is for when you want to understand why it works in Excel, adapt it to a trickier version, or make it robust enough to hand to a colleague. We keep the opening short on purpose — the depth is here when you want it, not in your way when you don’t.

Exact answer

In Excel: use =SUBTOTAL(9, range) — it sums only the visible rows, so a filtered table's total updates as you filter instead of staying stuck on the full set.

Syntax

=SUBTOTAL(function_num, ref1, ...)

Arguments

ArgumentDescription
function_numrequiredWhich calculation to run: 9 sums, 1 averages, 3 counts. Add 100 (109, 101, 103) to also ignore manually hidden rows.
ref1requiredThe range to aggregate. Further ranges can follow.

Related functions

AGGREGATESUMIFCOUNTIF
Annotated stepsExcel
1

Click a cell above or below the data — not inside the filtered range itself.

2

Type =SUBTOTAL( and then the function number: 9 for a sum.

3

Add a comma and select the data range.

4

Press Enter, then apply a filter and watch the total change to match what is on screen.

Ctrl+CthenCtrl+Shift+V+Cthen+Ctrl+VPaste values · WindowsMac

Need it as an auditable file?

Ships inside the linked template — formula-driven, unlocked, audit-ready.

View template

What this does

SUBTOTAL runs one of eleven aggregations, chosen by a number, and — crucially — ignores rows hidden by a filter. That is what makes a filtered table's total honest: a plain SUM keeps totalling rows the filter has removed from view. The function number chooses the operation (9 = SUM, 1 = AVERAGE, 2 = COUNT, 3 = COUNTA, 4 = MAX, 5 = MIN). Adding 100 to it (109, 101 and so on) additionally excludes rows you hid by hand, not just filtered ones. SUBTOTAL also ignores any nested SUBTOTAL inside its own range, so section totals do not get double-counted in a grand total. Keep the inputs visible and clearly labelled and the whole thing stays auditable — anyone who opens the file later, including you, can see at a glance exactly what feeds the result and change one assumption without hunting through the formula. For “excel table subtotal”, the reliable version is a short checking loop, not just the first command that appears to work. Run it on a deliberately small range first, watch how the affected cells change, and only then apply the same setup to the full sheet. When a formula is involved, keep the inputs labelled beside it, reference cells instead of typing values, and apply number formatting only after the result checks out. That is what makes a calculation you can defend to a CFO or an auditor useful in real work: repeatable, auditable, and not dependent on memory or luck.

A worked example

Above a filtered sales table, =SUBTOTAL(9, D2:D500) shows the total of just the rows currently visible and recalculates on every filter change. To average only visible rows, =SUBTOTAL(1, D2:D500). To exclude manually hidden rows as well as filtered ones, =SUBTOTAL(109, D2:D500). SUBTOTAL is what makes a filtered report tell the truth, because it totals what the reader can actually see. A practical tip before you scale it up: build it once on a small block of test data, confirm the number against the tool on this page, and only then point it at your real sheet. That one habit catches almost every mistake while it is still cheap to fix, long before a wrong figure reaches a report or a colleague.

In Google Sheets

Everything above works in Google Sheets too. Excel and Sheets share the formula syntax used here; only the surrounding menus are arranged differently. That portability is deliberate — learn it once and it follows you between the two tools and across Windows and Mac. Nothing on this page is behind a login: the tool runs entirely in your browser, the formula is shown in full with one-click copy, and the steps work the same on Windows and Mac. That is the whole promise here — the exact answer, a way to prove it on your own numbers, and just enough context to make it stick. The short version of “excel table subtotal”: the answer is at the top of this page, the tool proves it on your own numbers, and the sections above explain why it holds so the next variation does not stump you. Excel rewards people who reference cells instead of typing values and who keep inputs separate from formulas, because that is what makes a result you can audit months later. Build it once, deliberately, with the live tool as a check, and you convert a one-off lookup into a reusable skill — which is the whole point of learning the why and not just the what.

Common mistakes

  • Using 9 when rows were hidden by hand rather than filtered — 9 still counts those. Use 109 to exclude both kinds.
  • Placing the SUBTOTAL cell inside the filtered range, where the filter can hide the total itself.
  • Reaching for SUBTOTAL when the requirement is a condition rather than a filter; SUMIFS is the right tool for "sum where region = West".

Frequently asked questions

What is the difference between SUBTOTAL and SUM?

SUM totals every row in the range regardless of filtering. SUBTOTAL(9, …) totals only the rows a filter is currently showing.

What do the function numbers mean?

1 AVERAGE, 2 COUNT, 3 COUNTA, 4 MAX, 5 MIN, 6 PRODUCT, 7 STDEV, 8 STDEVP, 9 SUM, 10 VAR, 11 VARP. Add 100 to any of them to also ignore manually hidden rows.

Does SUBTOTAL double-count nested subtotals?

No. It deliberately ignores other SUBTOTAL results inside its range, so a grand total over sections stays correct.

Other ways people ask this

People reach this page typing “excel table with subtotals”, “subtotal excel table” and “excel subtotals in a table”, among other phrasings; whichever wording you used, the fix above is the one you want.

Why do people search for this in so many different ways?

Because the same task has many names. “excel table with subtotals”, “subtotal excel table”, “excel subtotals in a table” all point at the one operation explained on this page, which is why they all lead here.