QUBA – Moderne Funktionen: Dynamische Matrizen, LAMBDA, XVERGLEICH
Status: GEPRÜFT (Prof-Gate, Nachprüfung 01.08.2026 — alle 6 Aufgaben ABGENOMMEN). Sechs gelöste Aufgaben (42 P) aus dem Voll-Abdeckungs-Sweep.
Gebaut am 01.08.2026 für die Klausur am Mo 03.08.2026 (60 P. / 60 Min. / Papier / open book).
Geschlossene Lücken aus der Abdeckungs-Matrix (Voll-Abdeckungs-Sweep 01.08.2026): L6 (FILTER/EINDEUTIG/SORTIEREN als geschriebene Formeln, 12 P) · L7 (Weiterverarbeitung dynamischer Matrizen, 8 P) · L4 (TEILERGEBNIS und AGGREGAT, 8 P) · L25 (LAMBDA und LET, 6 P) · L32 (XVERGLEICH, 4 P) · L31 (ZEICHEN(10)/GLÄTTEN/RÖMISCH, 4 P). Summe 42 Punkte in 6 Aufgaben.
Papierklausur-Hinweis. Alle Formeln in dieser Datei sind so geschrieben, wie sie mit der Hand aufs Blatt gehören: deutsche Funktionsnamen, Semikolon ; als Argumenttrenner, Komma , als Dezimaltrennzeichen, eckige Klammern [ ] nur als Kennzeichnung optionaler Argumente im Syntaxbild. Diese Klammern werden nicht mitgeschrieben. Der englische Name steht jeweils in Klammern dahinter, weil Rohleders Folien teils englische Bezeichnungen zeigen.
Prüfstandard. Rohleder verlangt bei Funktionsfragen ausdrücklich „Syntax und Erklärung jedes Bestandteils". Jede Funktion unten ist deshalb Argument für Argument aufgeschlüsselt. Darauf läuft die Punktevergabe hinaus.
Jahrgangs-Hinweis. Verweise auf U02 bis U14 beziehen sich auf das laufende 26er-Semester. Eine U15 gibt es in diesem Semester nicht; wo unten U15 steht, ist die Abschluss-Sitzung des Vorjahres (25er-Jahrgang) gemeint und als solche gekennzeichnet.
1. Dynamische Matrizen schreiben: FILTER, EINDEUTIG, SORTIEREN (12 P)
a) 6 P. Geben Sie die Syntax von FILTER(), EINDEUTIG() und SORTIEREN() an und erläutern Sie jedes einzelne Argument.
b) 4 P. Die Zahlungen eines Girokontos wurden als
tblGirokonto importiert. Geben Sie die Formel an, die alle Umsätze addiert, deren Buchungstext den in E73 stehenden Suchbegriff enthält, und erläutern Sie jeden Bestandteil.c) 2 P. Erläutern Sie das Überlaufverhalten dieser Funktionen, die zugehörige Bezugsart und die Ursache des Fehlerwerts
#ÜBERLAUF!.a) 6 P. – Die drei Syntaxen, Argument für Argument
FILTER (engl. FILTER) gibt aus einem Datenbereich genau die Zeilen zurück, für die eine Bedingung wahr ist, ohne die Quelldaten anzufassen.
=FILTER(Matrix;Einschließen;[Wennleer])
Matrix(1. Argument, Pflicht): der Datenbereich, aus dem gefiltert wird. In der Praxis ist das eine Tabellenspalte wietblKosmetik[Umsatz]oder der gesamte TabellenkörpertblKosmetik. Er bestimmt, welche Spalten im Ergebnis erscheinen.Einschließen(2. Argument, Pflicht): ein Wahrheitsvektor ausWAHRundFALSCH, der genauso viele Zeilen haben muss wieMatrix. Er entsteht typischerweise aus einem Vergleich wietblKosmetik[Vertreter]="Schmitt". Nur Zeilen, an deren PositionWAHRsteht, kommen durch; bei abweichender Länge meldet Excel#WERT!.[Wennleer](3. Argument, optional): der Wert, der ausgegeben wird, wenn kein einziger Datensatz die Bedingung erfüllt. Fehlt das Argument, liefert FILTER in diesem Fall den Fehlerwert#KALK!. ⟨2⟩
EINDEUTIG (engl. UNIQUE) verdichtet eine Liste auf ihre verschiedenen Werte, ebenfalls ohne die Quelle zu verändern.
=EINDEUTIG(Matrix;[nachSpalte];[genaueinmal])
Matrix(1. Argument, Pflicht): der Bereich oder die Matrix, aus der die Dubletten entfernt werden.[nachSpalte](2. Argument, optional): die Vergleichsrichtung.FALSCHoder weggelassen bedeutet, dass Zeilen miteinander verglichen werden (der Normalfall bei senkrecht stehenden Listen);WAHRvergleicht Spalten und eignet sich für waagerecht angeordnete Daten.[genaueinmal](3. Argument, optional): die Auswahlregel.FALSCHoder weggelassen gibt jeden vorkommenden Wert einmal zurück, also die übliche „eindeutige Liste".WAHRgibt nur die Werte zurück, die in der Quelle genau ein einziges Mal vorkommen, also die echten Einzelstücke; Werte mit Dubletten fallen dabei komplett heraus. ⟨4⟩
SORTIEREN (engl. SORT) ordnet einen Bereich, ohne die Quelldaten umzustellen.
=SORTIEREN(Matrix;[Sortierindex];[Sortierreihenfolge];[nachSpalte])
Matrix(1. Argument, Pflicht): der zu sortierende Bereich oder das Ergebnis einer vorgelagerten Funktion.[Sortierindex](2. Argument, optional): die Nummer der Spalte innerhalb vonMatrix, nach der sortiert wird, nicht ihr Name. Ohne Angabe gilt 1, also die erste Spalte.[Sortierreihenfolge](3. Argument, optional):1sortiert aufsteigend (Standard),-1absteigend. Andere Werte ergeben#WERT!.[nachSpalte](4. Argument, optional): die Sortierrichtung.FALSCHoder weggelassen sortiert Zeilen untereinander (Normalfall),WAHRsortiert Spalten nebeneinander um. ⟨5⟩
Die drei Funktionen werden in der Praxis ineinander verschachtelt und von innen nach außen gelesen. Rohleders Standardkonstruktion für eine Auswahlliste lautet
=SORTIEREN(EINDEUTIG(tblKosmetik[Produktgruppe]))
und bedeutet: EINDEUTIG holt aus der Spalte Produktgruppe jede Ausprägung genau einmal, SORTIEREN bringt das Ergebnis alphabetisch aufsteigend in Ordnung. Dieses Ergebnis wird auf einem Parameter-Blatt abgelegt und als Quelle einer Datenüberprüfung (Zellendropdown) verwendet, sodass die Auswahlliste automatisch mitwächst, sobald in den Rohdaten eine neue Produktgruppe auftaucht. ⟨6⟩
b) 4 P. – Die Girokonto-Formel
=WENNFEHLER(SUMME(FILTER(tblGirokonto[Umsatz in EUR];ISTZAHL(SUCHEN($E73;tblGirokonto[Buchungstext]))));0)
Die Formel wird von innen nach außen gelesen, weil jede Schicht das Ergebnis der darunterliegenden weiterverarbeitet. SUCHEN($E73;tblGirokonto[Buchungstext]) durchsucht jeden einzelnen Buchungstext nach dem Suchbegriff aus E73 und gibt bei einem Treffer dessen Fundposition als Zahl zurück, andernfalls den Fehlerwert #WERT!; verwendet wird SUCHEN (engl. SEARCH) und nicht FINDEN, weil SUCHEN die Groß- und Kleinschreibung ignoriert und Buchungstexte von Banken in dieser Hinsicht unzuverlässig sind. Der Bezug $E73 ist spaltenabsolut und zeilenrelativ, damit die Formel die Suchbegriff-Liste hinunterkopiert werden kann und je Zeile den dort stehenden Begriff verwendet. ⟨7⟩
ISTZAHL(…) (engl. ISNUMBER) macht aus der Fundposition ein WAHR und aus dem Fehlerwert ein FALSCH und erzeugt damit genau den Wahrheitsvektor, den FILTER als zweites Argument Einschließen verlangt. FILTER(…) gibt daraufhin die Umsätze derjenigen Datensätze zurück, an deren Position WAHR steht. ⟨8⟩ SUMME(…) addiert diese zurückgegebenen Umsätze zu einer einzigen Zahl. Damit ist die Konstruktion Rohleders Alternative zur Pivottabelle für mehrfachbedingte Summen. ⟨9⟩
WENNFEHLER(…;0) umschließt das Ganze und fängt den Fall ab, dass kein Buchungstext den Suchbegriff enthält: FILTER meldet dann #KALK!, und ohne die Umhüllung stünde dieser Fehlerwert in der Kostenübersicht und würde jede darüberliegende Summe ebenfalls zerstören. Statt des Fehlerwerts wird 0 ausgegeben, was fachlich korrekt ist, weil zu diesem Suchbegriff tatsächlich keine Kosten angefallen sind. ⟨10⟩
c) 2 P. – Spilling, Spill-Operator und #ÜBERLAUF!
Alle drei Funktionen sind dynamische Matrixformeln: Die Formel steht in genau einer Zelle, der Ankerzelle, gibt aber eine ganze Matrix zurück, die Excel automatisch in die benachbarten leeren Zellen überlaufen lässt („Spilling"). Der Überlaufbereich passt seine Größe selbsttätig an die Datenlage an, er wächst und schrumpft mit den Daten. Die frühere Bestätigung mit Strg+Umschalt+Enter samt geschweiften Klammern entfällt, ein einfaches Enter genügt. Adressiert wird der gesamte Bereich über die eigene Bezugsart des Überlaufbereichs-Operators # (Spilled Range Operator), also etwa =SUMME(E5#) für die Summe des kompletten bei E5 beginnenden Überlaufs, die bei jeder Größenänderung automatisch mitzieht. ⟨11⟩
Der Fehlerwert #ÜBERLAUF! entsteht nicht durch eine falsche Formel, sondern dadurch, dass der beanspruchte Zielbereich blockiert ist. Blockierend wirken nicht leere Nachbarzellen, verbundene Zellen, der Blattrand und der Umstand, dass die Formel innerhalb einer als Tabelle formatierten Liste steht, in der Excel kein Überlaufen zulässt. Zur Behebung klickt man die Ankerzelle an, liest am gestrichelten Rahmen ab, welchen Bereich die Formel braucht, räumt diesen vollständig frei beziehungsweise hebt den Zellverbund auf oder nimmt die Formel aus der Tabelle heraus. ⟨12⟩
⟨+1⟩ In Rohleders Alternativentabelle zur Pivotanalyse (Folie 87) steht jede der drei Funktionen mit einer eigenen Zweckbestimmung: FILTER für „Listen filtern ohne Quelldaten zu ändern", EINDEUTIG für „eindeutige Listen ohne Quelldaten zu ändern", SORTIEREN für „sortierte Listen ohne Quelldaten zu ändern" und SUMME(FILTER()) für die Kreuztabellierung mehrfachbedingter Summen. Der wiederkehrende Halbsatz „ohne Quelldaten zu ändern" trägt dabei die Abgrenzung zum AutoFilter: Der AutoFilter verändert die Ansicht der Originaldaten, die Matrixfunktionen lassen sie unangetastet.
⟨+2⟩ Der Fehlerwert bei leerem Filterergebnis heißt #KALK! (engl. #CALC!) und nicht #NV. Das ist eine beliebte Verwechslung: #NV kommt von Nachschlagefunktionen, #KALK! von den Matrixfunktionen. Sein Skript nennt ihn an dieser Stelle wörtlich.
⟨+3⟩ Die Challenge „Dynamische Matrizen" (Folie 83) arbeitet genau diese Kette ab: filtern, Kriterium verschärfen, Feldnamen per strukturiertem Verweis ergänzen, Ausgabematrix auf die ersten fünf Spalten reduzieren, eindeutige Listen erzeugen, diese sortieren und schließlich als Dropdown-Auswahl für die Kriterien verwenden. Wer diese Reihenfolge nachvollziehen kann, hat die Aufgabe in jeder Formulierung.
Rohleders Erwartung: Rohleder trennt auf Folie 41 zwischen „ca. 50 kennen" und „ca. 20 beherrschen" und hat die zweite Gruppe auf einer gelben Liste markiert; die dynamischen Matrixformeln behandelt er als Kernstoff mit eigener Challenge und eigenem Folienblock 79 bis 83. Dazu hat er in der Abschluss-Sitzung des Vorjahres (U15, 25er-Jahrgang) gesagt, diese Funktionen solle man aus dem Stegreif eingeben können; im 26er-Semester ist die Aussage nicht wiederholt worden, der Anspruch steht aber unverändert auf Folie 41. Auf Papier heißt das: Funktionsname korrekt geschrieben, Argumente in der richtigen Reihenfolge, Semikolon als Trenner, strukturierte Verweise statt
A2:A500. Er akzeptiert eine Umschreibung des Zwecks nicht als Ersatz für die geschriebene Formel.
2. Weiterverarbeitung dynamischer Matrizen (8 P)
a) 5 P. Nennen Sie vier dieser Funktionen, geben Sie ihre Syntax an, erläutern Sie jedes Argument und nennen Sie je ein kaufmännisches Anwendungsbeispiel.
b) 3 P. Geben Sie eine verschachtelte Formel an, die aus
tblKosmetik nur die Umsätze der Vertreterin Schmitt absteigend nach Umsatz sortiert und davon nur drei Spalten ausgibt, und erläutern Sie den Aufbau.a) 5 P. – Vier Funktionen zur Weiterverarbeitung
SPALTENWAHL (engl. CHOOSECOLS) greift gezielt einzelne Spalten aus einer Matrix heraus.
=SPALTENWAHL(Matrix;Spaltennummer1;[Spaltennummer2];…)
Matrix(1. Argument, Pflicht): die Matrix, aus der Spalten entnommen werden, meist das Ergebnis eines vorgelagerten FILTER.Spaltennummer1(2. Argument, Pflicht): die laufende Nummer der ersten zurückzugebenden Spalte. Eine negative Zahl zählt von rechts,-1ist also die letzte Spalte.[Spaltennummer2];…(weitere Argumente, optional): beliebig viele weitere Spaltennummern. Ihre Reihenfolge bestimmt die Ausgabereihenfolge, sodass sich Spalten damit gleichzeitig auswählen und umsortieren lassen; eine Nummer darf auch mehrfach vorkommen.
Kaufmännisch: Aus einer breiten Umsatztabelle für den Vorstandsbericht nur Kunde, Datum und Betrag ausgeben, ohne die Quelltabelle zu beschneiden. ⟨1⟩
VSTAPELN (engl. VSTACK) setzt mehrere Matrizen untereinander zu einer einzigen zusammen.
=VSTAPELN(Matrix1;[Matrix2];…)
Matrix1(1. Argument, Pflicht): die erste, oben stehende Matrix.[Matrix2];…(weitere Argumente, optional): jede weitere Matrix wird unten angefügt. Die Breite des Ergebnisses richtet sich nach der breitesten beteiligten Matrix; schmalere werden rechts mit#NVaufgefüllt.
Kaufmännisch: Zwölf gleich aufgebaute Monatstabellen zu einer Jahresbasis stapeln und danach in einem Zug auswerten, statt zwölf Einzelauswertungen zu addieren. Rohleder kündigt genau das in U07 an: dass man Tabellen stapeln kann, bevor man sie auswertet. Die Schwesterfunktion HSTAPELN (HSTACK) stapelt waagerecht und eignet sich, um Szenariospalten nebeneinanderzulegen. ⟨2⟩
MTRANS (engl. TRANSPOSE) vertauscht Zeilen und Spalten.
=MTRANS(Matrix)
Matrix(einziges Argument, Pflicht): die zu transponierende Matrix. Aus jeder Zeile wird eine Spalte und umgekehrt; das Ergebnis läuft über und bleibt dynamisch mit der Quelle verbunden.
Kaufmännisch: Eine senkrecht als Datensätze geführte Parameterliste als Kopfzeile eines quer aufgebauten Auswertungsblatts ausgeben. Das ist die Verbindung zwischen der von Rohleder verlangten Datensatz-Modellierung und der Berichtsdarstellung, die der Empfänger erwartet. Anders als „Inhalte einfügen / Transponieren" ist MTRANS eine lebende Formel und nicht eine einmalige Kopie. ⟨3⟩
ZEILENWAHL (engl. CHOOSEROWS) greift gezielt einzelne Zeilen aus einer Matrix heraus und ist damit das Gegenstück zu SPALTENWAHL.
=ZEILENWAHL(Matrix;Zeilennummer1;[Zeilennummer2];…)
Matrix(1. Argument, Pflicht): die Matrix, aus der Zeilen entnommen werden, typischerweise das Ergebnis eines vorgelagerten FILTER oder SORTIEREN.Zeilennummer1(2. Argument, Pflicht): die laufende Nummer der ersten zurückzugebenden Zeile. Eine negative Zahl zählt von unten,-1ist also die letzte Zeile.[Zeilennummer2];…(weitere Argumente, optional): beliebig viele weitere Zeilennummern; ihre Reihenfolge bestimmt wieder die Ausgabereihenfolge, und eine Nummer darf mehrfach vorkommen.
Kaufmännisch: die Top-5-Kunden eines Vertriebsgebiets ausgeben, indem man die nach Umsatz absteigend sortierte Matrix mit =ZEILENWAHL(SORTIEREN(…;5;-1);1;2;3;4;5) auf die ersten fünf Zeilen kürzt. Die Rangliste bleibt damit eine lebende Formel und muss nach jedem Datenzuwachs nicht neu gebaut werden. ⟨4⟩
Zur Weiterverarbeitungsgruppe der Folie 80 gehören außerdem ZUZEILE (TOROW) und ZUSPALTE (TOCOL), die eine zweidimensionale Matrix in einen einzigen Vektor auflösen. Von Folie 79 her kommt SORTIERENNACH (SORTBY) dazu: Es sortiert eine Matrix nach einem anderen, gleich langen Bereich, der selbst nicht Teil der Ausgabe sein muss, etwa Produktnamen nach ihrem Deckungsbeitrag, ohne den Deckungsbeitrag mit auszugeben. ⟨5⟩
b) 3 P. – Die verschachtelte Formel
=SPALTENWAHL(SORTIEREN(FILTER(tblKosmetik;tblKosmetik[Vertreter]="Schmitt");5;-1);1;2;5)
Gelesen wird von innen nach außen, weil jede Funktion die Matrix ihrer Vorgängerin als erstes Argument übernimmt. FILTER(tblKosmetik;tblKosmetik[Vertreter]="Schmitt") gibt den vollständigen Tabellenkörper zurück, aber nur die Zeilen, in denen in der Spalte Vertreter „Schmitt" steht. Das Ergebnis ist eine mehrspaltige Matrix und keine einzelne Spalte. ⟨6⟩
SORTIEREN(…;5;-1) bekommt diese Matrix als Matrix und sortiert sie nach der fünften Spalte der Ergebnismatrix. (Vorausgesetzt ist dabei, dass der Umsatz in tblKosmetik die fünfte Spalte belegt, dieselbe Annahme, unter der Rohleders Folienbeispiel =SORTIEREN(B32#;5;-1) steht; in der Klausur schreibt man diese Voraussetzung mit hin.) Der Sortierindex zählt innerhalb der übergebenen Matrix und nicht innerhalb der Originaltabelle. Die -1 als Sortierreihenfolge sorgt für absteigende Sortierung, also den größten Umsatz oben. ⟨7⟩
SPALTENWAHL(…;1;2;5) reduziert das sortierte Zwischenergebnis auf die Spalten 1, 2 und 5 in genau dieser Reihenfolge. Da alle drei Funktionen Matrizen zurückgeben, entsteht ein einziger zusammenhängender Überlaufbereich, der sich vollständig anpasst, sobald in tblKosmetik Datensätze hinzukommen. Setzt man die Feldnamen darüber, geschieht das ebenfalls per Formel: =VSTAPELN(SPALTENWAHL(tblKosmetik[#Kopfzeilen];1;2;5);SPALTENWAHL(…)) stapelt Kopfzeile und Datenteil zu einer fertigen Ergebnistabelle. ⟨8⟩
⟨+1⟩ SEQUENZ eignet sich zum „Vorrechnen" im Sinne von Folie 121, also zur Plausibilisierung eines Barwerts ohne Finanzfunktion: =SUMME(tblZahlung[Betrag]/(1+Zins)^SEQUENZ(ZEILEN(tblZahlung[Betrag]))) bildet die Abzinsungsformel unmittelbar nach und ist damit die Kontrollrechnung zu NBW, dessen Konvention sie eins zu eins trifft: Die erste Zahlung wird um eine volle Periode abgezinst. Für XKAPITALWERT taugt sie ausdrücklich nicht als Gegenprobe, denn diese Funktion zinst taggenau auf Basis eines 365-Tage-Jahres ab und setzt die erste Zahlung in den Zeitpunkt 0. In der Formel steht ZEILEN statt ANZAHL, weil ANZAHL leere oder textuelle Betragszellen überspringt und der Zahlenvektor dann kürzer wäre als die Betragsspalte.
⟨+2⟩ Rohleder ordnet diese Gruppe in U09 ausdrücklich als Richtungsentscheidung von Microsoft ein: Es kämen nicht nur neue Matrixfunktionen hinzu, auch bestehende Tabellenblattfunktionen würden „hinter den Kulissen" auf Matrixarbeitsweise umprogrammiert. Wer in einer Bewertungsfrage begründen soll, warum man heute in Matrizen statt in Einzelzellen modelliert, findet hier sein Argument.
⟨+3⟩ VSTAPELN löst ein Problem, das strukturierte Verweise allein nicht lösen: Tabellennamen müssen arbeitsmappenweit eindeutig sein, es kann also nicht zwölfmal tblUmsatz geben. Gestapelt wird deshalb über zwölf verschiedene Tabellennamen, und genau deshalb ist die konsequente Präfix-Taufe (tblJan, tblFeb, …) Voraussetzung dafür, dass die Formel überhaupt lesbar bleibt.
⟨+4⟩ Nicht zur Weiterverarbeitungsgruppe gehört SEQUENZ (SEQUENCE). Die Funktion steht auf Folie 79 bei den erzeugenden Matrixfunktionen (Syntax: =SEQUENZ(Zeilen;[Spalten];[Anfang];[Schritt])), weil sie kein Matrix-Argument entgegennimmt, sondern eine Zahlenfolge aus dem Nichts aufspannt; =SEQUENZ(10;1;2026;1) liefert etwa die Planjahre 2026 bis 2035 als mitwachsende Achse. Genau diese Unterscheidung, erzeugen auf Folie 79 gegen weiterverarbeiten auf Folie 80, ist der Grund, warum die Frage nach „vier Funktionen zur Weiterverarbeitung" mit SEQUENZ falsch beantwortet wäre. Dasselbe gilt für PIVOTMIT, GRUPPIERENNACH, SORTIERENNACH, EINZELW und ZUFALLSMATRIX.
Rohleders Erwartung: Er fragt Funktionsgruppen gern als „nennen und erläutern Sie vier davon" ab und will bei jeder das kaufmännische Anwendungsbeispiel sehen, nicht die technische Umschreibung. „VSTAPELN stapelt Matrizen vertikal" ist die Definition und noch keine Antwort; erwartet wird der Zusatz, dass sich damit zwölf Monatstabellen vor der Auswertung zu einer Jahresbasis zusammenführen lassen. Achten Sie außerdem auf die Gruppenzugehörigkeit: Wer bei einer Frage nach Weiterverarbeitung eine erzeugende Funktion nennt, verliert den Teilpunkt, obwohl die Syntax stimmt. Die Namen müssen deutsch und exakt geschrieben sein:
SPALTENWAHL, nichtCHOOSECOLSund nicht „Spaltenauswahl".
3. TEILERGEBNIS und AGGREGAT (8 P)
a) 4 P. Geben Sie die Syntax von TEILERGEBNIS() und AGGREGAT() an und erläutern Sie jedes Argument.
b) 2 P. Erläutern Sie den Unterschied zwischen den Funktionsnummern 1–11 und 101–111 bei TEILERGEBNIS().
c) 2 P. Begründen Sie, wann AGGREGAT() gegenüber TEILERGEBNIS() vorzuziehen ist, und nennen Sie den Preis dafür.
a) 4 P. – Die beiden Syntaxen, Argument für Argument
TEILERGEBNIS (engl. SUBTOTAL) wendet eine über eine Kennzahl ausgewählte Zusammenfassungsfunktion auf einen Bereich an.
=TEILERGEBNIS(Funktion;Bezug1;[Bezug2];…)
Funktion(1. Argument, Pflicht): eine Zahl, die die anzuwendende Statistik auswählt: 1 MITTELWERT, 2 ANZAHL, 3 ANZAHL2, 4 MAX, 5 MIN, 6 PRODUKT, 7 STABW (Stichprobe), 8 STABWN (Grundgesamtheit), 9 SUMME, 10 VARIANZ (Stichprobe), 11 VARIANZEN (Grundgesamtheit). Die Pluralform VARIANZEN meint dabei die Grundgesamtheit und nicht mehrere Stichproben; das ist die klassische Vertauschungsfalle des deutschen Excel. Jede dieser elf Funktionen existiert ein zweites Mal als 101 bis 111 mit abweichendem Verhalten gegenüber ausgeblendeten Zeilen (siehe b).Bezug1(2. Argument, Pflicht): der erste auszuwertende Bereich, in einer formatierten Tabelle als strukturierter Verweis.[Bezug2];…(weitere Argumente, optional): beliebig viele weitere Bereiche, die gemeinsam ausgewertet werden. ⟨1⟩
Zwei Verhaltensweisen gehören zur Syntax dazu, weil sie den Zweck der Funktion ausmachen. Erstens ignoriert TEILERGEBNIS andere TEILERGEBNIS-Formeln innerhalb der Bezüge, sodass sich Zwischensummen bei einer Gesamtsumme nicht ein zweites Mal aufaddieren. Zweitens ignorieren beide Nummernkreise die Zeilen, die ein AutoFilter herausgefiltert hat. Die Funktion rechnet also stets mit dem, was gerade sichtbar gefiltert ist. ⟨2⟩
AGGREGAT (engl. AGGREGATE) ist die jüngere und deutlich flexiblere Schwesterfunktion und existiert in zwei Formen.
=AGGREGAT(Funktion;Optionen;Bezug1;[Bezug2];…) (Bezugsform) =AGGREGAT(Funktion;Optionen;Matrix;[k]) (Matrixform)
Funktion(1. Argument, Pflicht): eine Zahl von 1 bis 19. Die Nummern 1 bis 11 entsprechen denen von TEILERGEBNIS; dazu kommen 12 MEDIAN, 13 MODUS.EINF, 14 KGRÖSSTE, 15 KKLEINSTE, 16 QUANTIL.INKL, 17 QUARTILE.INKL, 18 QUANTIL.EXKL und 19 QUARTILE.EXKL.Optionen(2. Argument, Pflicht: die Position muss besetzt sein, das Argument selbst darf aber leer bleiben und wirkt dann wie0): eine Zahl von 0 bis 7, die festlegt, was übergangen wird: 0 beziehungsweise leer: verschachtelte TEILERGEBNIS- und AGGREGAT-Funktionen ignorieren; 1: zusätzlich ausgeblendete Zeilen; 2: zusätzlich Fehlerwerte; 3: ausgeblendete Zeilen und Fehlerwerte und verschachtelte Funktionen; 4: nichts ignorieren; 5: nur ausgeblendete Zeilen; 6: nur Fehlerwerte; 7: ausgeblendete Zeilen und Fehlerwerte.Bezug1beziehungsweiseMatrix(3. Argument, Pflicht): der auszuwertende Bereich. In der Bezugsform dürfen weitere Bereiche folgen, in der Matrixform steht genau ein Vektor oder eine Matrix.[k](4. Argument, nur in der Matrixform): die Rangzahl beziehungsweise das Quantil, das die Funktionen 14 bis 19 zusätzlich benötigen: bei 14 KGRÖSSTE also „der wievieltgrößte Wert", bei 16 QUANTIL.INKL ein Anteil zwischen 0 und 1. Für die Funktionen 1 bis 13 entfällt dieses Argument. ⟨4⟩
b) 2 P. – Die beiden Nummernkreise bei TEILERGEBNIS
Der Unterschied betrifft ausschließlich von Hand ausgeblendete Zeilen. Die Nummern 1 bis 11 beziehen manuell ausgeblendete Zeilen weiterhin mit ein: Die Werte sind zwar unsichtbar, zählen aber mit. Die Nummern 101 bis 111 ignorieren sie und rechnen nur mit dem, was tatsächlich am Bildschirm steht. ⟨5⟩
Für Zeilen, die der AutoFilter entfernt hat, gilt der Unterschied dagegen nicht: Diese werden von beiden Nummernkreisen ignoriert. Praktisch heißt das, dass man im Zweifel den Kreis 101 bis 111 wählt, weil „was ich sehe, ist was ich rechne" die Erwartung jedes Berichtsempfängers ist. Genau das tut Excel auch selbst: Blendet man in einer formatierten Tabelle über den Tabellenentwurf die Ergebniszeile ein, schreibt Excel dort automatisch =TEILERGEBNIS(109;[Planumsatz 2014]), also 109 für SUMME unter Ausschluss ausgeblendeter Zeilen, und erzeugt dabei zugleich einen strukturierten Verweis. Die Statistik lässt sich anschließend über ein Dropdown wechseln, und eine manuelle Eingabe der Funktion ist davon unabhängig jederzeit möglich. ⟨6⟩
c) 2 P. – Wann AGGREGAT vorzuziehen ist
AGGREGAT ist in vier Punkten überlegen. Erstens kann es Fehlerwerte ignorieren: Steht in einer Datenspalte ein einziges #NV, etwa weil dort Nachschlageformeln stehen, liefert TEILERGEBNIS zwingend ebenfalls #NV, während AGGREGAT mit Option 6 oder 3 einfach über den Fehler hinweg weiterrechnet. Zweitens kennt es mit 19 statt 11 mehr Funktionen, darunter Median, Modus und die Quantile, die TEILERGEBNIS überhaupt nicht anbietet. Drittens ist die Entscheidung über das Ignorieren bei TEILERGEBNIS in der Funktionsnummer versteckt, bei AGGREGAT dagegen ein eigenes Argument und damit frei mit jeder Statistik kombinierbar. ⟨7⟩
Viertens und praktisch am wichtigsten: Weil Funktionsnummer und Option eigene Argumente sind, dürfen sie auf Zellen zeigen. Das ist Stufe 3 der LMU-Fallstudie auf Folie 78:
=AGGREGAT($G$9;$H$9;INDIREKT($F$7&"["&$F$8&"]"))
Dort kommt die Statistik aus $G$9, die Option aus $H$9, und der Bereich wird per INDIREKT aus Tabellen- und Feldnamen zusammengesetzt. Damit lässt sich die Analysefunktion über ein Dropdown wechseln, ohne je wieder eine Formel anzufassen; in Rohleders Alternativentabelle zur Pivotanalyse steht AGGREGAT genau mit dieser Zweckbestimmung. Der Preis dafür ist in seinen eigenen Worten, dass AGGREGAT „flexibler als Teilergebnis" ist, „dafür manuelle Erstellung erforderlich": Es gibt keinen Komfortweg über die Ergebniszeile, die Formel muss von Hand geschrieben werden. ⟨8⟩
⟨+1⟩ Rohleder in U07, wörtlich und mit Ansage: „Aggregat setzt sich in der Praxis nicht durch. Das ist denen zu kompliziert. Sie halten das aus." Das ist die klarste Form, in der er sagen kann, dass er die Funktion trotz ihrer geringen Praxisverbreitung verlangt.
⟨+2⟩ In U08 durfte die Evaluationsauswertung wahlweise mit AGGREGAT oder mit einfachen Funktionen plus ausgeblendeter Spalte gelöst werden; in U10 hat er sie am Datenschnitt vorgeführt und dabei Option 5 benannt, weil eine Aggregatfunktion, die ausgeblendete Zeilen übergeht, den gefilterten Wert direkt oben anzeigt. Das ist der Grund, warum Datenschnitt und AGGREGAT bei ihm zusammengehören: filtern per Maus, Ergebnis ohne eine einzige neue Formel ablesen.
⟨+3⟩ Eine Einschränkung ehrlichkeitshalber: In U14 hat er gesagt, er wisse nicht sicher, ob AGGREGAT gemeinsam gemacht worden sei, und werde nur prüfen, was in der Veranstaltung tatsächlich zusammen bearbeitet wurde. Nach U07, U08 und U10 ist das der Fall. AGGREGAT ist damit prüfbar, und die Einschränkung entlastet höchstens bei sehr speziellen Randfragen.
⟨+4⟩ Ein Denkfehler, der in der Klausur Punkte kostet: TEILERGEBNIS und AGGREGAT ersetzen kein SUMMEWENNS. Sie wählen die Statistik flexibel, filtern aber nicht nach einem Kriterium; das Filtern übernimmt der AutoFilter, der Datenschnitt oder die Sichtbarkeit der Zeilen. Wer eine bedingte Summe braucht, nimmt SUMMEWENNS oder SUMME(FILTER()).
⟨+5⟩ Dreh-Variante abgesichert: „Wann genügt TEILERGEBNIS() — und AGGREGAT() wäre unnötig?" — Immer dann, wenn der Bereich keine Fehlerwerte enthält und die gewünschte Statistik zu den elf Grundfunktionen gehört. Dann trägt der Komfortweg: Die Ergebniszeile der formatierten Tabelle schreibt =TEILERGEBNIS(109;…) von selbst und bietet den Statistikwechsel per Dropdown an, während AGGREGAT() von Hand erstellt werden muss. Rohleders eigene Einordnung stützt diese Wahl: „Aggregat setzt sich in der Praxis nicht durch. Das ist denen zu kompliziert." AGGREGAT() lohnt erst, wenn Fehlerwerte zu übergehen sind, Median oder Quantile gebraucht werden oder Funktionsnummer und Option aus Zellen kommen sollen.
Rohleders Erwartung: Die Funktionsnummern sind bei ihm kein Auswendiglern-Selbstzweck, sondern das Argument dafür, dass die Statistik ein Parameter und keine Formeländerung ist. Wer 9 für SUMME und 109 für „SUMME ohne Ausgeblendete" nennen kann und daraus die Dropdown-Steuerung ableitet, beantwortet die Frage vollständig. Nennen sollte man mindestens 9 beziehungsweise 109 und 1 beziehungsweise 101 namentlich; die Behauptung „es gibt Nummern von 1 bis 11" ohne ein einziges Beispiel ist ihm zu wenig.
4. LAMBDA und LET: eigene Funktionen ohne VBA (6 P)
a) 3 P. Geben Sie die Syntax von LET() an, erläutern Sie jedes Argument und nennen Sie zwei Vorteile.
b) 3 P. Erläutern Sie, wie sich mit LAMBDA() eine eigene Tabellenblattfunktion anlegen lässt, und nennen Sie zwei Vorteile gegenüber einer in VBA programmierten UDF.
a) 3 P. – LET, Argument für Argument
LET (engl. LET) vergibt innerhalb einer Formel Namen für Zwischenergebnisse und verwendet sie anschließend.
=LET(Name1;Namenswert1;[Name2;Namenswert2];…;Berechnung)
Name1(1. Argument, Pflicht): der frei gewählte Bezeichner für das erste Zwischenergebnis. Er muss mit einem Buchstaben beginnen und darf nicht wie ein Zellbezug aussehen, sonst hält Excel ihn für eine Adresse.Namenswert1(2. Argument, Pflicht; umgangssprachlich schlicht „der Wert zu Name1"): der Ausdruck, der einmal berechnet und unterName1abgelegt wird. Das kann ein Zellbezug, ein strukturierter Verweis oder eine vollständige Formel sein.[Name2;Namenswert2];…(weitere Argumente, optional): beliebig viele weitere Paare. Ein späteres Paar darf auf einen früher vergebenen Namen zugreifen, sodass sich Rechenschritte aufeinander aufbauen lassen.Berechnung(letztes Argument, Pflicht): der Ausdruck, der das eigentliche Ergebnis der Zelle liefert und dabei die vergebenen Namen benutzt. Er steht immer am Ende; daran erkennt Excel, dass die Paarliste zu Ende ist. ⟨1⟩
Ein Beispiel aus der Ergebnisrechnung:
=LET(Umsatz;SUMMEWENNS(tblUmsatz[Betrag];tblUmsatz[Jahr];2026);Kosten;SUMMEWENNS(tblKosten[Betrag];tblKosten[Jahr];2026);(Umsatz-Kosten)/Umsatz)
Hier stehen zwei Paare vor der abschließenden Berechnung der Umsatzrendite. ⟨2⟩
Die beiden Vorteile sind Lesbarkeit und Performance. Lesbarkeit, weil die Formel benennt, womit sie rechnet, statt denselben langen Ausdruck mehrfach zu wiederholen. Ein Dritter erkennt an Umsatz und Kosten sofort die Logik, wo er sonst zwei fast gleiche SUMMEWENNS-Ausdrücke Zeichen für Zeichen vergleichen müsste. Performance, weil jeder benannte Ausdruck nur einmal ausgewertet wird; ohne LET berechnet Excel einen dreifach vorkommenden Teilausdruck auch dreimal, was in großen Modellen unmittelbar auf die Neuberechnungszeit durchschlägt. ⟨3⟩
b) 3 P. – LAMBDA und die eigene Tabellenblattfunktion
LAMBDA (engl. LAMBDA) beschreibt eine Rechenvorschrift mit Platzhaltern, die später mit Werten gefüllt werden.
=LAMBDA([Parameter1];[Parameter2];…;Berechnung)
[Parameter1]und weitere (technisch alle optional, in der Praxis aber mindestens einer): die Platzhalter für die Werte, die der Aufrufer der Funktion später übergibt. Ihre Namen wählt man frei und sprechend, etwaTextoderUmsatz.Berechnung(letztes Argument, Pflicht): die Rechenvorschrift, die diese Platzhalter verwendet und das Ergebnis liefert. Auch hier steht sie immer am Ende. ⟨4⟩
Zur eigenen Tabellenblattfunktion wird der Ausdruck über den Namens-Manager: Registerkarte Formeln, Namens-Manager, Neu; unter „Name" trägt man den gewünschten Funktionsnamen ein, etwa AnzahlWörter, und unter „Bezieht sich auf" den LAMBDA-Ausdruck. Danach ist =AnzahlWörter(A2) in der gesamten Arbeitsmappe aufrufbar wie jede eingebaute Funktion, samt Autovervollständigung. Rohleders Folienbeispiel zählt die Wörter eines Textes:
=LAMBDA(Text;LÄNGE(GLÄTTEN(Text))-LÄNGE(WECHSELN(GLÄTTEN(Text);" ";""))+1)
Die Logik: GLÄTTEN entfernt Mehrfach- und Randleerzeichen, LÄNGE misst den bereinigten Text, WECHSELN entfernt sämtliche Leerzeichen, die Differenz beider Längen ist die Anzahl der Wortzwischenräume, und ein Wort mehr als Zwischenräume ergibt die Wortzahl. Testen lässt sich ein LAMBDA vor dem Benennen direkt in der Zelle, indem man ein zweites Klammerpaar mit dem Argument anhängt: =LAMBDA(Text;…)("Das ist ein Test"); ohne diesen Aufruf oder ohne Namen liefert ein LAMBDA #KALK!. ⟨5⟩
Zwei Vorteile gegenüber einer VBA-UDF: Erstens bleibt die Mappe makrofrei. Sie wird als gewöhnliche .xlsx gespeichert und nicht als .xlsm, sodass weder die Makrosicherheits-Warnung noch die Blockade von Makros aus dem Internet noch eine Unternehmensrichtlinie greift, die VBA vollständig abschaltet. Das zählt gerade vor dem Hintergrund von Microsofts erklärter Absicht, VBA mittelfristig abzulösen. Zweitens braucht es keine zweite Sprache und keine Entwicklungsumgebung. Die Funktion wird in derselben Formelsprache geschrieben, die die Anwender ohnehin beherrschen, sie steht sichtbar im Namens-Manager und wandert mit der Datei mit; eine UDF müsste in VBA programmiert, im VBA-Editor gepflegt und bei jeder Weitergabe mitverteilt werden. Hinzu kommt, dass ein LAMBDA in der Berechnungs-Engine von Excel rechnet und damit in der Regel schneller ist als eine UDF, die je Zelle einen Aufruf in den VBA-Interpreter kostet. ⟨6⟩
⟨+1⟩ LET und LAMBDA lassen sich kombinieren: Innerhalb der Berechnung eines LAMBDA darf ein LET stehen, sodass auch eine selbst gebaute Funktion mit lesbaren Zwischenschritten arbeitet statt mit einer einzigen unleserlichen Zeile. Das ist der übliche Aufbau bei allem, was länger als eine Zeile ist.
⟨+2⟩ Einordnung zur Prüfungswahrscheinlichkeit: LAMBDA und LET stehen im Skript auf der Powerfunktionen-Folie, wurden im 26er-Semester aber nicht als eigene Übung gemeinsam bearbeitet. Rohleders U14-Grundsatz lautet sinngemäß, dass er nicht abprüft, was in der Veranstaltung nicht gemeinsam gemacht wurde (Transkript U14 im Wortlaut: „dann prüfe ich das natürlich auch nicht an"). Danach ist eine große Aufgabe unwahrscheinlich, eine Nennfrage über vier bis sechs Punkte im Rahmen einer VBA-Frage dagegen gut möglich. Der Satz „eigene Funktionen ohne VBA" ist die Brücke, über die sie in eine VBA-Aufgabe hineinragen.
⟨+3⟩ Die Formel auf der Folie ist zugleich ein kleines Lehrstück für die beiden LET-Vorteile aus a): Sie ruft GLÄTTEN(Text) zweimal auf. Mit LET geschrieben, also =LAMBDA(Text;LET(t;GLÄTTEN(Text);LÄNGE(t)-LÄNGE(WECHSELN(t;" ";""))+1)), wird der Ausdruck nur einmal berechnet und die Formel zugleich kürzer. Den Performance-Vorteil liefert Rohleders eigenes Beispiel damit gleich mit.
⟨+4⟩ Umkehr-Frage abgesichert — falls er die Aufgabe gedreht recycelt: Zwei Nachteile bzw. Grenzen von LET() und LAMBDA(): Erstens sind beide Funktionen versionsabhängig, weil sie zu den nach Version 2019 eingeführten Features der Abo-Versionen gehören — wer die Mappe an eine ältere Installation weitergibt, etwa an das im Skript erwähnte Excel 2019 im Computerpool, das seit Ende 2018 keine Feature-Updates mehr erhält, sieht dort statt des Ergebnisses nur den Fehlerwert #NAME?. Zweitens ist eine per LAMBDA gebaute Funktion an die einzelne Arbeitsmappe gebunden, weil ihre Definition im Namens-Manager genau dieser Mappe lebt — in jeder weiteren Mappe muss der Name erneut angelegt werden, und ein unbenanntes oder ohne angehängtes Klammerpaar aufgerufenes LAMBDA quittiert die Zelle nur mit #KALK! statt mit einer verständlichen Meldung.
Rohleders Erwartung: Der Satz, auf den es ihm ankommt, ist „ohne VBA". Er stellt LAMBDA in die Linie Office Scripts, Python in Excel und die angekündigte VBA-Ablösung, und die Antwort sollte diesen Zusammenhang herstellen statt bei der reinen Syntax stehenzubleiben. Der Namens-Manager gehört zwingend in die Antwort: Ohne die Benennung ist ein LAMBDA keine Tabellenblattfunktion, sondern nur ein Ausdruck.
5. XVERGLEICH als moderner VERGLEICH (4 P)
a) 2 P. Geben Sie die Syntax von XVERGLEICH() an und erläutern Sie jedes Argument.
b) 2 P. Erläutern Sie zwei Unterschiede zum älteren VERGLEICH() und nennen Sie einen Fall, in dem XVERGLEICH() dem XVERWEIS() vorzuziehen ist.
a) 2 P. – Die Syntax, Argument für Argument
XVERGLEICH (engl. XMATCH) gibt nicht den gesuchten Wert zurück, sondern seine Position innerhalb des durchsuchten Vektors.
=XVERGLEICH(Suchkriterium;Suchmatrix;[Vergleichsmodus];[Suchmodus])
Suchkriterium(1. Argument, Pflicht): der Wert, dessen Position gesucht wird, also eine Zahl, ein Text in Anführungszeichen oder ein Zellbezug darauf.Suchmatrix(2. Argument, Pflicht): der Vektor, in dem gesucht wird, also eine Zeile oder eine Spalte. Anders als bei den alten Verweisfunktionen ist die Richtung gleichgültig, waagerecht und senkrecht funktionieren beide.[Vergleichsmodus](3. Argument, optional): die Art der Übereinstimmung. 0 exakte Übereinstimmung (Standard), -1 exakte Übereinstimmung oder der nächstkleinere Wert, 1 exakte Übereinstimmung oder der nächstgrößere Wert, 2 Übereinstimmung unter Verwendung der Platzhalterzeichen*,?und~.[Suchmodus](4. Argument, optional): die Durchlaufrichtung durch die Suchmatrix. 1 vom ersten Element an vorwärts (Standard), -1 vom letzten Element rückwärts, 2 binäre Suche in einer aufsteigend sortierten Matrix, -2 binäre Suche in einer absteigend sortierten Matrix. Die binären Modi setzen eine tatsächlich sortierte Matrix voraus und liefern sonst stillschweigend falsche Ergebnisse. ⟨2⟩
b) 2 P. – Unterschiede zu VERGLEICH und Abgrenzung zu XVERWEIS
Der erste und wichtigste Unterschied ist die umgekehrte Voreinstellung. VERGLEICH sucht ohne drittes Argument mit Vergleichstyp 1, also ungefähr, und setzt dabei eine aufsteigend sortierte Suchmatrix voraus; wer das vergisst, bekommt kein #NV, sondern lautlos ein falsches Ergebnis. Deshalb schreibt das Skript zu VERGLEICH ausdrücklich, für exakte Übereinstimmung sei Vergleichstyp 0 erforderlich. XVERGLEICH sucht ohne drittes Argument exakt. Die sichere Variante ist damit der Normalfall statt der Ausnahme. ⟨3⟩
Der zweite Unterschied ist der eigene Suchmodus. XVERGLEICH kann mit -1 rückwärts suchen und damit den letzten statt des ersten Treffers finden, etwa die jüngste Buchung eines Kunden in einer chronologisch geführten Tabelle; VERGLEICH kann das nicht. Ergänzend beherrscht XVERGLEICH über den Vergleichsmodus 2 die ausdrückliche Platzhaltersuche und über die Modi 2 und -2 die binäre Suche in sehr großen sortierten Listen.
Vorzuziehen ist XVERGLEICH gegenüber XVERWEIS immer dann, wenn man die Position braucht und nicht den Wert: um mit einer einzigen Suche mehrere Spalten über INDEX anzusprechen, statt denselben Suchvorgang je Spalte zu wiederholen, oder um zweidimensional in eine Kreuztabelle hineinzugreifen:
=INDEX(Matrix;XVERGLEICH(Zeilenkriterium;Zeilenköpfe;0);XVERGLEICH(Spaltenkriterium;Spaltenköpfe;0))
Dort bestimmt die eine Positionsangabe die Zeile und die andere die Spalte. Für das reine Nachschlagen eines Wertes bleibt XVERWEIS die erste Wahl, weil er die Position gar nicht erst sichtbar macht. ⟨4⟩
⟨+1⟩ Rohleders Auswahlhilfe ordnet die Nachschlagefunktionen nach dem Muster „Was kennen Sie, was brauchen Sie": Kennt man ein Suchkriterium und braucht die Position, führt der Weg zu VERGLEICH beziehungsweise heute XVERGLEICH; kennt man eine Position und braucht den Wert, zu INDEX. VERGLEICH und INDEX sind in seiner Tabelle beide als „veraltet" markiert, was nicht heißt, dass sie nicht mehr funktionieren; XVERWEIS erledigt ihre gemeinsame Aufgabe nur eben allein. Wie schmal der Anwendungsfall von XVERGLEICH ist, sagt er selbst: Es sei die Funktion, „[die] ich praktisch nie brauche. Im Unterschied zum X-Verweis, den man quasi täglich braucht." Genau deshalb muss die Antwort den einen Fall benennen, in dem er sie doch braucht: wenn die Position das Ergebnis ist und nicht der Wert.
⟨+2⟩ Die Argumentnamen sind bei XVERWEIS und XVERGLEICH bewusst identisch: Suchkriterium, Suchmatrix, [Vergleichsmodus], [Suchmodus]. XVERWEIS schiebt dazwischen nur Rückgabematrix und [wenn_nicht_gefunden] ein. Wer die sechs Argumente des XVERWEIS kennt, kennt die vier des XVERGLEICH bereits. Das spart auf Papier Zeit.
⟨+3⟩ Einordnung zur Prüfungswahrscheinlichkeit, mit demselben Maßstab wie bei LAMBDA und LET: XVERGLEICH steht zwar auf Folie 46 („Die Schwester-Funktion XVERGLEICH ist ebenfalls verfügbar"), ist im 26er-Semester aber in keiner Vorlesung gemeinsam bearbeitet worden; belegt ist die Funktion nur im Vorjahr, wo dazu der Satz fiel, er brauche den X-Vergleich „praktisch nie". Nach dem U14-Grundsatz ist eine eigenständige XVERGLEICH-Aufgabe deshalb unwahrscheinlich. Die realistische Form ist eine Teilfrage innerhalb einer XVERWEIS- oder Nachschlage-Aufgabe, in der man den Unterschied zwischen Position und Wert zeigen muss. Der Aufwand für diese vier Punkte ist entsprechend zu dosieren.
Rohleders Erwartung: Er will die Modus-Argumente sehen, weil sie den Unterschied zur alten Funktion tragen. „XVERGLEICH ist der neue VERGLEICH" ist keine Antwort; „XVERGLEICH sucht standardmäßig exakt, während VERGLEICH standardmäßig ungefähr sucht und dafür eine sortierte Matrix voraussetzt" ist eine. Und er unterscheidet konsequent Position von Wert; wer beides vermengt, verliert Punkte auch dann, wenn die Formel funktioniert.
6. Weitere Textfunktionen: ZEICHEN(10), GLÄTTEN, RÖMISCH (4 P)
a) 3 P. Geben Sie die Syntax von ZEICHEN(), GLÄTTEN() und RÖMISCH() an, erläutern Sie jedes Argument und nennen Sie je einen kaufmännischen Anwendungsfall.
b) 1 P. Geben Sie eine Formel an, die aus einem Datum das Quartal ermittelt.
a) 3 P. – Die drei Funktionen
ZEICHEN (engl. CHAR) gibt das Zeichen zurück, das zu einer Codenummer gehört.
=ZEICHEN(Zahl)
Zahl(einziges Argument, Pflicht): die Codenummer des gewünschten Zeichens im Zeichensatz des Rechners, zulässig von 1 bis 255. Werte außerhalb dieses Bereichs ergeben#WERT!.
Der praktisch wichtige Fall ist ZEICHEN(10), der nicht druckbare Zeilenumbruch, also dasselbe Zeichen, das beim Tippen mit Alt+Enter entsteht. Damit lassen sich mehrzeilige Beschriftungen als Formel erzeugen, etwa ="Kunde: "&A2&ZEICHEN(10)&"Umsatz: "&TEXT(B2;"#.##0 €") für eine zweizeilige Diagramm- oder Berichtsbeschriftung, die sich mit den Daten aktualisiert. Wichtig ist dabei, dass der Umbruch nur sichtbar wird, wenn für die Zelle der Zeilenumbruch eingeschaltet ist. Andernfalls steht alles in einer Zeile, und der Fehler wird an der Formel gesucht, obwohl er in der Formatierung liegt. ⟨1⟩
GLÄTTEN (engl. TRIM) entfernt überflüssige Leerzeichen.
=GLÄTTEN(Text)
Text(einziges Argument, Pflicht): die zu bereinigende Zeichenkette oder der Zellbezug darauf.
Die Funktion entfernt alle führenden und nachgestellten Leerzeichen und reduziert Mehrfach-Leerzeichen im Inneren auf jeweils eines. Kaufmännisch ist sie die Standardbereinigung für importierte Fremddaten vor jedem Abgleich: Ein unsichtbares Leerzeichen am Ende eines Kundennamens ist die häufigste Ursache dafür, dass ein XVERWEIS #NV meldet, obwohl der Wert augenscheinlich in der Liste steht. Abzugrenzen ist sie von zwei Nachbarn: Das geschützte Leerzeichen (Code 160) aus Webseiten- und PDF-Kopien entfernt GLÄTTEN nicht, dafür braucht es WECHSELN(A2;ZEICHEN(160);""); nicht druckbare Steuerzeichen entfernt SÄUBERN (engl. CLEAN). ⟨2⟩
RÖMISCH (engl. ROMAN) wandelt eine arabische Zahl in römische Schreibweise.
=RÖMISCH(Zahl;[Typ])
Zahl(1. Argument, Pflicht): die umzuwandelnde Zahl von 0 bis 3999. Nachkommastellen werden abgeschnitten, negative Zahlen ergeben#WERT!.[Typ](2. Argument, optional): die Strenge der Schreibweise von 0 bis 4. 0 oder weggelassen die klassische Form, 1 bis 3 zunehmend verkürzte Formen, 4 die stark vereinfachte Form. Anstelle von 0 und 4 sind auchWAHRundFALSCHzulässig.
Das Skript führt RÖMISCH gemeinsam mit TEXT unter „zum Formatieren der Ausgabe". Der Anwendungsfall ist also die Darstellung, etwa Quartals- oder Gliederungsziffern in römischer Schreibweise für ein Berichtsdeckblatt. Entscheidend für die Weiterverarbeitung: Das Ergebnis ist Text, keine Zahl, damit lässt sich nicht weiterrechnen; den Rückweg geht ARABISCH (engl. ARABIC). ⟨3⟩
b) 1 P. – Das Quartal aus einem Datum
=AUFRUNDEN(MONAT(A2)/3;0)
MONAT gibt die Monatszahl von 1 bis 12 zurück; durch 3 geteilt und auf null Nachkommastellen aufgerundet ergibt das die Quartalsnummer 1 bis 4. Gleichwertig ist =KÜRZEN((MONAT(A2)-1)/3)+1, das ohne Aufrunden auskommt. Als lesbare Beschriftung wird daraus ="Q"&AUFRUNDEN(MONAT(A2)/3;0). Kombiniert man das mit der Funktion aus a), entsteht die römische Ausgabeform =RÖMISCH(AUFRUNDEN(MONAT(A2)/3;0))&". Quartal", die aus dem 14.08.2026 den Text „III. Quartal" macht. Folie 41 nennt die Quartalsformel und „RÖMISCH zum Formatieren der Ausgabe" als zwei getrennte Punkte; die Verbindung beider ist die naheliegende Anwendung und kein Zitat. ⟨4⟩
⟨+1⟩ Diese drei Funktionen stehen auf der Folie nicht zufällig direkt hinter der Textverkettung: Sie sind die Bausteine, mit denen eine verkettete Ausgabe brauchbar wird. GLÄTTEN säubert die Eingangsdaten, ZEICHEN(10) gliedert die Ausgabe, TEXT und RÖMISCH formatieren sie. Wer in einer Verkettungsaufgabe zusätzlich die Bereinigung mitdenkt, liefert die vollständigere Antwort.
⟨+2⟩ Auf derselben Folie steht als weiterer Punkt „Dynamische Texte in Objekten bis 255 Zeichen Länge": Ein Textfeld oder eine Diagrammbeschriftung lässt sich an eine Zelle binden, indem man das Objekt markiert und in die Bearbeitungsleiste =Tabelle1!A1 schreibt. Damit wird eine verkettete Überschrift zur lebenden Beschriftung im Diagramm, und die gesamte Textgruppe greift praktisch ineinander.
⟨+3⟩ GLÄTTEN taucht in seiner LAMBDA-Beispielformel zum Wörterzählen wieder auf, und zwar aus einem sachlichen Grund: Ohne die Bereinigung würde jedes doppelte Leerzeichen als zusätzliches Wort gezählt. Das ist ein gutes Beispiel dafür, dass die kleinen Textfunktionen keine Spielerei sind, sondern die Korrektheit einer größeren Formel tragen.
Rohleders Erwartung: Bei den kleinen Textfunktionen fragt er nicht nach der Definition, sondern nach dem Wofür. Zu ZEICHEN(10) gehört der Hinweis auf den eingeschalteten Zeilenumbruch, zu GLÄTTEN der Importfall mit dem
#NVbeim Verweis, zu RÖMISCH die Einordnung als reine Formatierung der Ausgabe. Und er erwartet die deutschen Namen mit korrekten Umlauten:GLÄTTENundRÖMISCH, nichtGLAETTENund nichtROMAN.
Anhang: Zahlen zum Auswendiglernen
Auf Papier zählt, was man ohne Nachschlagen schreiben kann. Diese drei Blöcke sind der Kern dieser Datei.
TEILERGEBNIS — die elf Funktionsnummern (die 100er-Reihe ist jeweils dieselbe Funktion unter Ausschluss ausgeblendeter Zeilen):
| Nr. | 1 / 101 | 2 / 102 | 3 / 103 | 4 / 104 | 5 / 105 | 6 / 106 | 7 / 107 | 8 / 108 | 9 / 109 | 10 / 110 | 11 / 111 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Funktion | MITTELWERT | ANZAHL | ANZAHL2 | MAX | MIN | PRODUKT | STABW | STABWN | SUMME | VARIANZ | VARIANZEN |
Merke zu 10/11: VARIANZ = Stichprobe, VARIANZEN = Grundgesamtheit — die Pluralform meint nicht mehrere Stichproben.
AGGREGAT — die acht Optionen: 0 = verschachtelte Teilergebnisse/Aggregate ignorieren · 1 = zusätzlich ausgeblendete Zeilen · 2 = zusätzlich Fehlerwerte · 3 = ausgeblendete Zeilen und Fehlerwerte und verschachtelte · 4 = nichts ignorieren · 5 = nur ausgeblendete Zeilen · 6 = nur Fehlerwerte · 7 = ausgeblendete Zeilen und Fehlerwerte. Funktionsnummern 1 bis 11 wie oben, dazu 12 MEDIAN · 13 MODUS.EINF · 14 KGRÖSSTE · 15 KKLEINSTE · 16 QUANTIL.INKL · 17 QUARTILE.INKL · 18 QUANTIL.EXKL · 19 QUARTILE.EXKL.
Die Syntaxen dieser Datei in einer Übersicht:
| Funktion (DE) | engl. | Syntax |
|---|---|---|
| FILTER | FILTER | =FILTER(Matrix;Einschließen;[Wennleer]) |
| EINDEUTIG | UNIQUE | =EINDEUTIG(Matrix;[nachSpalte];[genaueinmal]) |
| SORTIEREN | SORT | =SORTIEREN(Matrix;[Sortierindex];[Sortierreihenfolge];[nachSpalte]) |
| SORTIERENNACH | SORTBY | =SORTIERENNACH(Matrix;nachMatrix1;[Sortierreihenfolge1];…) |
| SPALTENWAHL | CHOOSECOLS | =SPALTENWAHL(Matrix;Spaltennummer1;[Spaltennummer2];…) |
| ZEILENWAHL | CHOOSEROWS | =ZEILENWAHL(Matrix;Zeilennummer1;[Zeilennummer2];…) |
| VSTAPELN | VSTACK | =VSTAPELN(Matrix1;[Matrix2];…) |
| HSTAPELN | HSTACK | =HSTAPELN(Matrix1;[Matrix2];…) |
| MTRANS | TRANSPOSE | =MTRANS(Matrix) |
| SEQUENZ | SEQUENCE | =SEQUENZ(Zeilen;[Spalten];[Anfang];[Schritt]) |
| TEILERGEBNIS | SUBTOTAL | =TEILERGEBNIS(Funktion;Bezug1;[Bezug2];…) |
| AGGREGAT | AGGREGATE | =AGGREGAT(Funktion;Optionen;Bezug1;[Bezug2];…) bzw. =AGGREGAT(Funktion;Optionen;Matrix;[k]) |
| LET | LET | =LET(Name1;Namenswert1;[Name2;Namenswert2];…;Berechnung) |
| LAMBDA | LAMBDA | =LAMBDA([Parameter1];[Parameter2];…;Berechnung) |
| XVERGLEICH | XMATCH | =XVERGLEICH(Suchkriterium;Suchmatrix;[Vergleichsmodus];[Suchmodus]) |
| ZEICHEN | CHAR | =ZEICHEN(Zahl) |
| GLÄTTEN | TRIM | =GLÄTTEN(Text) |
| RÖMISCH | ROMAN | =RÖMISCH(Zahl;[Typ]) |
Gruppentrennung, die in der Klausur den Teilpunkt entscheidet: PIVOTMIT, GRUPPIERENNACH, FILTER, EINDEUTIG, SORTIEREN, SORTIERENNACH, SEQUENZ, EINZELW und ZUFALLSMATRIX erzeugen dynamische Matrizen (Folie 79). SPALTENWAHL, ZEILENWAHL, VSTAPELN, HSTAPELN, MTRANS, ZUZEILE und ZUSPALTE verarbeiten vorhandene Matrizen weiter (Folie 80).
7. Dynamische Matrixformeln (12 P.)
Dynamische Matrixformeln (12 P.)
✅ von 2 Profs geprüft
a) (6 P) Erläutern Sie drei charakteristische Eigenschaften dynamischer Matrixformeln.
b) (4 P) Was bedeutet #ÜBERLAUF! und wie genau ist der Fehler zu beheben?
c) (2 P) Wie werden z. B. in Formeln/Tabellenblattfunktionen Bezüge auf dynamische Matrixformeln eingegeben?
- a) DREI Eigenschaften, je 2 P, sauber getrennt halten (nicht mischen)
- (1) UEBERLAUF/Spill: EINE Formel in EINER Zelle liefert ein ganzes Array, das automatisch in leere Nachbarzellen 'überläuft'; Formel steht nur in der Ankerzelle (oben links)
- (2) KEIN CSE nötig: Bestätigung mit normalem ENTER statt Strg+Umschalt+Enter; keine geschweiften Klammern {} mehr
- (3) DYNAMISCH: UEberlaufbereich wächst/schrumpft automatisch mit der Quelldaten-Menge, ohne die Formel zu ändern
- b) #UEBERLAUF! (#SPILL!)
- Bedeutung: Array kann sich NICHT ausbreiten, weil der Zielbereich blockiert ist
- Ursachen nennen: Zielzelle(n) nicht leer (Wert/Text/Formel), verbundene Zellen, Blattrand, innerhalb einer Excel-Tabelle
- Behebung: Ankerzelle anklicken -> gestrichelter Rahmen zeigt beanspruchten Bereich -> störende Einträge dort löschen/verschieben (bzw. Zellverbund aufheben / Formel aus der Tabelle nehmen), bis der ganze Bereich frei ist
- c) Bezug über UEberlaufbereichs-Operator # (Raute)
- Ankeradresse + # = ganzer aktueller Spill, z. B. A1#
- Beispiel: =SUMME(A1#) summiert den kompletten UEberlaufbereich, wächst dynamisch mit
- Merksatz: Spill + Enter (kein CSE) + dynamische Grösse; # verweist auf den ganzen Überlauf
- Matrixformel / Array: 'Array' heisst einfach eine ganze Liste oder Tabelle von Werten auf einmal. Eine normale Formel gibt EIN Ergebnis in EINE Zelle. Eine Matrixformel rechnet mit vielen Werten gleichzeitig und liefert gleich mehrere Ergebnisse.
- Dynamisch: 'passt sich von selbst an'. Kommen Daten dazu oder fallen weg, ändert sich das Ergebnis automatisch mit - man muss die Formel nicht neu schreiben.
- Überlauf / Spill: Stellen Sie sich vor, Sie giessen Wasser in ein Glas (die eine Zelle) und es ist zu viel - es 'läuft über' in die Zellen daneben. Genauso verteilt Excel die vielen Ergebnisse automatisch auf die Nachbarzellen.
- Ankerzelle: die eine Startzelle oben links, in der die Formel wirklich steht. Alle anderen Ergebniszellen 'gehören' zu ihr, sind aber nur Anzeige - da kann man nichts hineinschreiben.
- CSE (Strg+Umschalt+Enter): früher musste man Matrixformeln mit diesen drei Tasten gleichzeitig abschliessen. Heute reicht die normale Enter-Taste - das ist die grosse Erleichterung.
- Geschweifte Klammern {}: das waren die 'Wellenklammern', die Excel früher um alte Matrixformeln herum anzeigte. Bei den neuen dynamischen Formeln gibt es die nicht mehr.
- #UEBERLAUF! (#SPILL!): eine Fehlermeldung. Sie sagt: 'Ich wollte meine Ergebnisse ausbreiten, aber es war kein Platz.' Meist steht in einer der Zielzellen schon etwas drin, das den Platz blockiert.
- Behebung des Fehlers: einfach dafür sorgen, dass die Zellen, in die das Ergebnis fliessen soll, komplett LEER sind - störende Inhalte löschen oder wegschieben. Excel zeigt mit einem gestrichelten Rahmen genau, welcher Bereich frei sein muss.
- Verbundene Zellen: mehrere Zellen, die zu einer grossen zusammengeklebt wurden. Solche 'Klebe-Zellen' blockieren den Überlauf - man muss den Verbund aufheben (die Zellen wieder trennen).
- Der Operator # (Raute): ein kleines Zeichen, das man an die Startzell-Adresse hängt (z. B. A1#). Es bedeutet 'nimm den GANZEN überlaufenden Bereich, der hier anfängt' - egal wie gross er gerade ist.
- Doppelpunkt : (Bereichsoperator): bedeutet 'von ... bis'. A2:A10 heisst 'alle Zellen von A2 bis A10 zusammen'.
- Semikolon ; (Trennzeichen): trennt in einer Formel mehrere Angaben voneinander, so wie ein Komma eine Aufzählung trennt. Wenn eine Funktion nur eine Angabe bekommt, braucht man kein Semikolon.
- = (Gleichheitszeichen): das Startsignal für jede Excel-Formel. Ohne das '=' am Anfang hält Excel die Eingabe für normalen Text, nicht für eine Rechnung.
- SUMME(): eine fertige Excel-Funktion, die alle angegebenen Zahlen zusammenzählt. Die runden Klammern () sind wie eine Tüte, in die man die Werte legt, mit denen gerechnet werden soll.
- EINDEUTIG(): eine Funktion, die aus einer Liste die Doppelten herauswirft und nur die verschiedenen Werte je einmal zurückgibt - und daraus entsteht automatisch so ein Überlauf-Ergebnis.
📝 Lösung
a) Drei charakteristische Eigenschaften (6 P = 3 x 2)
1. Überlaufverhalten (Spill) – ein Ergebnis-Array aus einer einzigen Formel. Eine dynamische Matrixformel wird nur in eine Zelle eingegeben (die Ankerzelle, oben links), liefert aber ein ganzes Feld von Ergebnissen. Diese werden automatisch in die benötigten Nachbarzellen ausgegeben – sie „laufen über" (engl. spill). Nur die Ankerzelle enthält die Formel; die übrigen Zellen des Überlaufbereichs zeigen lediglich die Werte an und sind selbst nicht editierbar.
2. Bestätigung mit normalem ENTER – kein CSE mehr nötig. Anders als klassische (Legacy-)Matrixformeln, die zwingend mit Strg + Umschalt + Enter (CSE) abgeschlossen und dann in geschweiften Klammern { } angezeigt wurden, wird eine dynamische Matrixformel mit der einfachen Eingabetaste (Enter) bestätigt. Es erscheinen keine geschweiften Klammern; das Array-Verhalten ist in Excel 365 der Standard.
3. Dynamische Größe – automatische Anpassung des Überlaufbereichs. Der Überlaufbereich passt sich automatisch an die Größe der Eingabedaten an: Wächst oder schrumpft die Quelle (z. B. mehr/weniger Zeilen), wächst bzw. schrumpft der Ergebnisbereich mit – ohne dass die Formel geändert werden muss. Das Ergebnis ist damit stets „live" mit den Quelldaten verknüpft.
(Weitere Kennzeichen, falls gefordert: eigene Array-Funktionen wie FILTER, SORTIEREN, EINDEUTIG, SEQUENZ, XVERWEIS; der Überlaufbereichs-Operator #; grau/gesperrte Nicht-Ankerzellen. Für die 6 Punkte genügen die drei oben sauber getrennt.)
b) Bedeutung von #ÜBERLAUF! und Behebung (4 P)
Bedeutung. #ÜBERLAUF! (engl. #SPILL!) ist der Fehler, der erscheint, wenn eine dynamische Matrixformel ihr Ergebnis-Array nicht in den vorgesehenen Bereich ausbreiten (überlaufen) kann, weil dieser blockiert ist. Die Formel selbst ist korrekt – nur der Zielbereich ist nicht frei.
Typische Ursachen.
- Eine oder mehrere Zellen im geplanten Überlaufbereich sind nicht leer (enthalten Werte, Text oder eine andere Formel).
- Im Zielbereich liegen verbundene Zellen.
- Der Überlaufbereich würde über den Rand des Tabellenblatts hinausreichen.
- Die Formel steht innerhalb einer Excel-Tabelle (Tabellen unterstützen kein Überlaufen).
Behebung – Schritt für Schritt.
- Die Ankerzelle (mit der Formel) anklicken. Excel zeigt den beanspruchten Bereich als gestrichelten Rahmen an, und über das Warndreieck/Fehler-Dropdown wird die konkrete Ursache genannt.
- Alle störenden Einträge innerhalb dieses gestrichelten Bereichs entfernen (Inhalte löschen) oder an eine andere Stelle verschieben, sodass der gesamte Überlaufbereich vollständig leer ist.
- Bei verbundenen Zellen: den Zellverbund im Zielbereich aufheben.
- Steht die Formel in einer Excel-Tabelle: die Formel außerhalb der Tabelle platzieren (oder die Tabelle in einen normalen Bereich umwandeln).
Sobald der komplette Zielbereich frei ist, läuft das Array über und der Fehler verschwindet automatisch.
c) Bezug auf eine dynamische Matrixformel eingeben (2 P)
Der Bezug erfolgt über den Überlaufbereichs-Operator # (Raute), angehängt an die Adresse der Ankerzelle. Damit verweist man auf den gesamten, aktuell überlaufenden Bereich – unabhängig davon, wie groß er gerade ist (der Bezug wächst/schrumpft dynamisch mit).
Bestandteil-Erklärung A1#:
A1– Adresse der Ankerzelle (Spalte A, Zeile 1), also die Zelle, in der die dynamische Matrixformel steht.#– Überlaufbereichs-Operator (Spill-Range-Operator). Er bedeutet „der ganze Überlaufbereich, der bei dieser Ankerzelle beginnt".
Beispiel mit vollständiger Zerlegung: =SUMME(A1#)
=– Formelbeginn; leitet in Excel jede Formel/Berechnung ein.SUMME– Funktion, die alle übergebenen Zahlen addiert.(…)– Argumentklammern; umschließen die Werte, mit denen die Funktion rechnet.A1#– das (einzige) Argument: der komplette Überlaufbereich ab AnkerzelleA1(siehe oben).SUMMEaddiert damit automatisch alle aktuell überlaufenden Werte.- (Kein
;nötig, da nur ein Argument übergeben wird; das Semikolon;würde erst mehrere Argumente voneinander trennen.)
Zweites Beispiel (erzeugt selbst einen Überlauf): =EINDEUTIG(A2:A10)
EINDEUTIG– Funktion, gibt die eindeutigen (nicht doppelten) Werte eines Bereichs zurück; das Ergebnis ist ein Array und läuft über.()– Argumentklammern.A2:A10– Argument = zusammenhängender Zellbereich:A2= Startzelle,A10= Endzelle.:– Bereichsoperator (Doppelpunkt), bedeutet „von … bis" und fasstA2bisA10zu einem Block zusammen.
Auf das Ergebnis dieser Formel (Ankerzelle z. B. C2) würde man anschließend wieder mit C2# zugreifen.
⟨+1⟩ Ein Bedien-Reservepunkt: Löschen lässt sich eine dynamische Matrix nur über ihre Ankerzelle — der Versuch, eine übergelaufene Zelle zu entfernen, wird mit dem Hinweis quittiert, dass der Wert aus der Formel in der Ankerzelle stammt; die Nicht-Ankerzellen zeigen nur an und lassen sich nicht editieren.