🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Excel-Funktion SUBTOTAL — Summen, die Ihren Filter respektieren (und die 9-gegen-109-Falle)

|

Excel-Funktion SUBTOTAL — Summen, die Ihren Filter respektieren (und die 9-gegen-109-Falle)

KurzfassungSUBTOTAL ist eine Summe, die von Ihrem Filter weiß. Das schlichte SUM addiert immer jede Zeile; SUBTOTAL überspringt die Zeilen, die ein Filter ausgeblendet hat, sodass sich die Zahl am Ende einer gefilterten Liste live aktualisiert. Syntax: =SUBTOTAL(function_num; range). Die function_num wählt die Operation und das Ausblendverhalten: 9 = SUM ohne gefilterte Zeilen; 109 = SUM ohne gefilterte und manuell ausgeblendete Zeilen. Die zweite Superkraft: SUBTOTAL ignoriert andere SUBTOTALs in seinem Bereich, sodass eine Gesamtsumme Ihre Gruppen-Teilergebnisse nie doppelt zählt. Fehlerwerte überspringt es nicht — dafür ist AGGREGATE da. Funktioniert ab Excel 2003.

Hinweis: In der deutschen Excel-Oberfläche heißt diese Funktion TEILERGEBNIS (Argumenttrennzeichen: Semikolon ;).

=SUBTOTAL(9, Umsatz)        ' SUMME der gefiltert-sichtbaren Zeilen
=SUBTOTAL(109, Umsatz)      ' SUMME der Zeilen, die nach BEIDEM sichtbar sind: Filtern und manuellem Ausblenden

SUM hat eine Aufgabe und erledigt sie schroff: alles addieren, Filter hin oder her. Genau diese Blindheit ist das Problem, wenn Sie an einer gefilterten Liste arbeiten und die Summe dessen, was Sie sehen wollen. SUBTOTAL ist die Antwort — aber es verbirgt eine berüchtigte Falle in seinem allerersten Argument und eine zweite Eigenschaft, die fast niemandem beigebracht wird und die es zum richtigen Werkzeug für mehrschichtige Berichte macht. Nehmen wir uns beide vor.

Was Sie lernen werden

  • Das Denkmodell: eine Summe, die sich mit Ihrem Filter neu berechnet
  • Die function_num-Tabelle — elf Operationen, zwei Familien
  • Die 9-gegen-109-Falle: warum manuelles Ausblenden von Zeilen eine 9-Summe nicht ändert
  • Warum SUBTOTAL andere SUBTOTALs ignoriert — die Superkraft gegen Doppelzählung
  • Das Eine, was es nicht kann: Fehlerwerte überspringen
  • Die Ermessensfrage: SUBTOTAL vs. SUM vs. SUMIFS

Das Denkmodell: eine Summe, die sich mit Ihrem Filter bewegt

Stellen Sie sich eine Umsatzliste mit eingeschaltetem AutoFilter vor. Sie filtern auf „West", und zehn Zeilen werden angezeigt. Ein =SUM(Umsatz) am Ende addiert weiterhin alle Zeilen, ob sichtbar oder nicht — es hat keine Ahnung, dass ein Filter existiert. =SUBTOTAL(9, Umsatz) addiert nur die Zeilen, die der Filter sichtbar gelassen hat, sodass sich die Summe in dem Moment, in dem Sie den Filter auf „Ost" umstellen, auf Osts Zahl neu berechnet. Das ist das ganze Konzept: SUBTOTAL ist ein filterbewusstes Aggregat. Deshalb erzeugen sowohl die Ergebniszeile der Excel-Tabelle als auch die Funktion Daten → Teilergebnis SUBTOTAL-Formeln statt SUM.

Die function_num-Tabelle: elf Operationen, zwei Familien

Das erste Argument bedeutet nicht nur „9 heißt Summe". Es ist ein Code, der sowohl die Operation als auch ihren Umgang mit ausgeblendeten Zeilen festlegt. Es gibt elf Operationen, jede in zwei Familien verfügbar:

' 1–11   : die Operation, ohne FILTER-ausgeblendete Zeilen (zählt aber manuelle Ausblendungen)
' 101–111: dieselbe Operation, ZÄHLT manuell ausgeblendete Zeilen AUCH nicht
1/101 = AVERAGE   2/102 = COUNT    3/103 = COUNTA   4/104 = MAX
5/105 = MIN       6/106 = PRODUCT  7/107 = STDEV    8/108 = STDEVP
9/109 = SUM       10/110 = VAR     11/111 = VARP

=SUBTOTAL(1; …) ist also ein filterbewusster AVERAGE; =SUBTOTAL(104; …) ist ein MAX, das zusätzlich von Hand ausgeblendete Zeilen ignoriert. Die Tabelle müssen Sie selten auswendig können — aber Sie müssen die zwei Familien verstehen, denn genau dort wohnt die Falle.

Die 9-gegen-109-Falle

Hier ist der Fehler, der Leute in die Foren treibt. Sie haben =SUBTOTAL(9, Umsatz). Sie klicken ein paar Zeilen mit der rechten Maustaste an und blenden sie manuell aus (kein Filter) und erwarten, dass die Summe sinkt. Sie rührt sich nicht. Warum?

Weil die Familie 1–11 nur Zeilen ignoriert, die ein Filter ausgeblendet hat. Zeilen, die Sie manuell ausgeblendet haben, werden weiterhin gezählt. Um auch manuelle Ausblendungen auszuschließen, brauchen Sie die Familie 101–111:

=SUBTOTAL(9,   Umsatz)      ' ignoriert gefilterte Zeilen; ZÄHLT manuell ausgeblendete Zeilen
=SUBTOTAL(109, Umsatz)      ' ignoriert gefilterte Zeilen UND manuell ausgeblendete Zeilen

Die praktische Regel: Wenn Sie ausschließlich filtern, liefern 9 und 109 dasselbe Ergebnis. In dem Moment, in dem Sie Zeilen von Hand ausblenden, verwenden Sie die 100+-Codes. Im Zweifel greifen Sie standardmäßig zu 109 für Summen und 103 für Anzahlen — sie verhalten sich so, wie die meisten Menschen erwarten, dass sich „summiere, was ich sehe" verhält.

Die Superkraft, die niemand lehrt: SUBTOTAL ignoriert andere SUBTOTALs

Das ist die Eigenschaft, die SUBTOTAL zu mehr macht als „einer gefilterten SUM", und sie ist überhaupt der Grund seiner Existenz. Ein SUBTOTAL überspringt alle anderen SUBTOTAL-Zellen innerhalb seines Bereichs. Stellen Sie sich einen Bericht vor, mit einem SUBTOTAL nach dem Block jeder Region und dann einem einzigen Gesamt-SUBTOTAL, das die ganze Spalte umspannt:

B10  =SUBTOTAL(9, B2:B9)      ' Teilergebnis West
B20  =SUBTOTAL(9, B11:B19)    ' Teilergebnis Ost
B21  =SUBTOTAL(9, B2:B20)     ' GESAMTsumme — zählt B10 und B20 NICHT doppelt

Ein schlichtes =SUM(B2:B20) würde die beiden Gruppen-Teilergebnisse zusätzlich zu den Detailzeilen addieren und Ihre Gesamtsumme verdoppeln. SUBTOTAL schließt die verschachtelten Teilergebnisse klammheimlich aus, sodass die Gesamtsumme stimmt, ohne dass Sie den Bereich um sie herum zurechtschneiden müssen. Genau so baut Daten → Teilergebnis mehrstufige Zusammenfassungen, die korrekt aufgehen — und wenn Sie das einmal wissen, greifen Sie jedes Mal zu SUBTOTAL, wenn eine Spalte Detailzeilen mit laufenden Teilergebnissen mischt.

Das Eine, was es nicht kann: Fehler überspringen

SUBTOTAL ist filterbewusst, aber es ist nicht fehlerbewusst. Ein einziges #N/A oder #DIV/0! irgendwo im Bereich, und das gesamte SUBTOTAL gibt einen Fehler zurück:

=SUBTOTAL(9, Umsatz)      ' ein #N/A in Umsatz → das SUBTOTAL selbst ist #N/A

Das ist genau die Lücke, die AGGREGATE füllen sollte: Es kann alles, was SUBTOTAL kann, und ergänzt eine Option, Fehlerwerte zu ignorieren (sowie eine breitere Auswahl an Funktionen). Wenn Ihre gefilterte Spalte Fehler enthalten kann — ein VLOOKUP, das danebengreift, eine Division durch null — ist das Ihr Stichwort, auf AGGREGATE umzusteigen.

Die Ermessensfrage: SUBTOTAL vs. SUM vs. SUMIFS

Sie beantworten unterschiedliche Fragen, und sie zu verwechseln ist die Wurzel der meisten „falsche Summe"-Verwirrung:

  • SUMalles summieren, Filter ignorierend. Richtig für eine feste Gesamtsumme, die sich nicht bewegen soll, wenn jemand die Tabelle filtert.
  • SUBTOTAL — summiert das, was sichtbar ist nach dem Filtern (und optional nach dem manuellen Ausblenden). Richtig für das Ende einer interaktiven Liste und der Motor hinter den Ergebniszeilen von Tabellen.
  • SUMIFS — summiert Zeilen, die Bedingungen erfüllen, die Sie in die Formel tippen, unabhängig davon, was auf dem Bildschirm gefiltert ist. Richtig für eine Berichtszelle, die immer „West Q1" bedeuten muss, ob die Tabelle darauf gefiltert ist oder nicht.

So behalten Sie es sauber im Kopf: SUBTOTAL folgt dem Filter; SUMIFS folgt den Kriterien, die Sie geschrieben haben. Wenn die Zahl auf die Filter-Dropdowns reagieren soll, ist es SUBTOTAL. Wenn sie an eine Definition geheftet sein soll, ist es SUMIFS.

Wie ExcelMaster hilft

Die SUBTOTAL-Fehler drehen sich selten um die Syntax — es geht um die Wahl zwischen 9 und 109 oder darum, nicht zu bemerken, dass eine Gesamtsumme verschachtelte Teilergebnisse doppelt zählt. ExcelMaster liest, was Sie bauen — eine Summe am Ende dieser gefilterten Liste, die auch Zeilen ignoriert, die ich ausblende, oder ein Regionsbericht mit Teilergebnissen und einer Gesamtsumme, die aufgeht — und schreibt die richtige function_num, den richtigen Bereich und stellt Sie in dem Moment auf AGGREGATE um, in dem Fehler ins Bild kommen. Sie beschreiben den Bericht; ExcelMaster wählt den Code.

Häufig gestellte Fragen

Was ist der Unterschied zwischen SUBTOTAL 9 und 109?

Beide SUMMIEREN die sichtbaren Zeilen nach einem Filter. Der Unterschied sind die manuell ausgeblendeten Zeilen: 9 zählt Zeilen, die Sie per Rechtsklick → Ausblenden verborgen haben, weiterhin mit, während 109 auch sie ignoriert. Wenn Sie ausschließlich den Filter verwenden, stimmen sie überein. Wenn Sie Zeilen von Hand ausblenden, verwenden Sie 109.

Warum ändert sich mein SUBTOTAL nicht, wenn ich Zeilen ausblende?

Wahrscheinlich verwenden Sie einen 1–11-Code (wie 9), der nur filter-ausgeblendete Zeilen ignoriert, nicht die manuell ausgeblendeten. Wechseln Sie zur Familie 101–111 (z. B. 109), damit sich manuelles Ausblenden auf die Summe auswirkt.

Ignoriert SUBTOTAL andere SUBTOTAL-Zellen?

Ja — das ist eine bewusste Eigenschaft. Ein SUBTOTAL schließt alle anderen SUBTOTAL-Ergebnisse innerhalb seines Bereichs aus, sodass eine Gesamtsumme über eine Spalte, die bereits Gruppen-Teilergebnisse enthält, diese nicht doppelt zählt. Ein schlichtes SUM würde es tun.

Wie summiere ich nur gefilterte/sichtbare Zellen?

Verwenden Sie =SUBTOTAL(9, range) (oder 109, um auch manuell ausgeblendete Zeilen zu überspringen). Bei einer Tabelle schalten Sie die Ergebniszeile ein — sie fügt SUBTOTAL für Sie ein und lässt Sie die Funktion aus einem Dropdown wählen.

Wie bringe ich SUBTOTAL dazu, Fehlerwerte zu überspringen?

Das kann es nicht. Verwenden Sie stattdessen AGGREGATE=AGGREGATE(9, 6, range) summiert die sichtbaren Zeilen und ignoriert dabei Fehler. Dieses zusätzliche options-Argument ist der ganze Grund, warum es AGGREGATE gibt.

Getestet in

Getestet in: Excel 365 (Windows 11) — zuletzt geprüft am 30.06.2026.

Verwandte Leitfäden: Excel AGGREGATE · Excel SUMIFS · Excel SUMPRODUCT · Excel FILTER · Excel COUNTIFS