Kurs
Wenn man eine Programmiersprache lernt, gehören Bedingungen fast immer zu den ersten Themen. Gemeint sind klassische IF-ELSEIF-ELSE-Anweisungen, mit denen Programme je nach logischer Bedingung unterschiedlich reagieren. In Excel denkt man daran oft nicht als Erstes. Trotzdem gibt es sie dort – und sie sind gerade bei Berichten mit gewisser Komplexität sehr wichtig. In diesem Tutorial schauen wir uns an, wie IF-ELSE-Anweisungen in Excel aufgebaut sind und welche weiterführenden Funktionen wie COUNTIF() in bestimmten Situationen extrem nützlich sind.
Grundlegende IF-Anweisungen
Starten wir mit einem Überblick, wie du eine einfache IF-Anweisung in Excel schreibst. Die Syntax lautet:
IF(condition, value_if_true, value_if_false)
Wobei gilt:
- condition: Ein Wert oder eine logische Operation, die TRUE oder FALSE ergibt
- value_if_true: Der Rückgabewert, wenn die Bedingung TRUE ist
- value_if_false: Der Rückgabewert, wenn die Bedingung FALSE ist
Schauen wir uns dazu ein einfaches Beispiel mit einer kleinen Tabelle an:
Einfach, oder? Wenn du mit R vertraut bist, hast du wahrscheinlich bemerkt, dass die Syntax im Grunde der Funktion ifelse() entspricht. Es gibt jedoch ein paar Unterschiede, zum Beispiel bei den logischen Operatoren. Im einfachen Beispiel oben habe ich den Operator ">" verwendet – die Standardnotation für größer als. Andere sind weniger selbsterklärend, etwa der Operator für ungleich, der als "<>" geschrieben wird.
Einen vollständigen Überblick über die in Excel verwendeten Vergleichsoperatoren findest du hier:
| Vergleichsoperator | Bedeutung | Einfaches Beispiel |
|---|---|---|
| = | gleich | A1 = B1 |
| > | größer als | A1 > B1 |
| >= | größer oder gleich | A1 >= B1 |
| < | kleiner als | A1 < B1 |
| <= | kleiner oder gleich | A1 <= B1 |
| <> | ungleich | A1 <> B1 |
OR(), AND() und NOT()
Vergleichsoperatoren sind nicht das Einzige, was sich bei Bedingungen in Excel von Python, R oder Matlab unterscheidet. Auch boolesche Operationen wie OR, AND und NOT werden anders notiert. In Excel würdest du eine OR-Abfrage zum Beispiel so schreiben:
IF(OR(value_1 = k, value_2 = y), value_if_true, value_if_false)
Alle booleschen Operatoren in Aktion siehst du im folgenden Beispiel:
Verschachtelte IF-Anweisungen
Wie in Python, R oder Matlab kannst du IF-ELSEIF-ELSE auch in Excel verschachteln. Dazu fügst du einfach eine weitere IF-Abfrage in eine bestehende ein – je nachdem, ob diese TRUE oder FALSE ergibt. So prüfst du mehr Bedingungen und gibst je nach Fall unterschiedliche Ergebnisse zurück. Excel erlaubt bis zu 64 verschachtelte IFs. Ich rate jedoch davon ab, zu viele IFs zu schachteln: Die Logik wird schnell fehleranfällig, und Debugging oder spätere Änderungen können sehr mühsam werden.
Hier ein einfaches Beispiel für verschachtelte IFs direkt in Excel:
COUNTIF() und COUNTIFS()
Neben klassischen IF-Anweisungen bietet Excel weitere Funktionen, die anhand vorgegebener Bedingungen arbeiten. In diesem Abschnitt konzentrieren wir uns auf bedingte Zählfunktionen, speziell auf COUNTIF() und COUNTIFS().
COUNTIF() zählt Zellen, die ein einziges Kriterium erfüllen. Die Syntax lautet:
COUNTIF(cell_range_to_count, criteria)
Wobei gilt:
- cell_range_to_count: Der konkrete Zellbereich, den du zählen möchtest
- criteria: Das Kriterium, das steuert, welche Zellen gezählt werden. Beispiele:
- COUNTIF(A1:A10, 10) – Zählt, wie viele Zellen im Bereich A1 bis A10 gleich 10 sind
- COUNTIF(A1:A10, B5) – Zählt, wie viele Zellen im Bereich A1 bis A10 dem Wert in Zelle B5 entsprechen
- COUNTIF(A1:A10, "Gandalf") – Zählt, wie viele Zellen im Bereich A1 bis A10 gleich "Gandalf" sind
- COUNTIF(A1:A10, ">20") – Zählt, wie viele Zellen im Bereich A1 bis A10 größer als 20 sind
- COUNTIF(A1:A10, "<>Gandalf") – Zählt, wie viele Zellen im Bereich A1 bis A10 ungleich "Gandalf" sind
COUNTIFS unterscheidet sich – wie der Name andeutet – dadurch, dass mehrere Kriterien berücksichtigt werden können. Die Syntax lautet:
COUNTIFS(cell_range_to_count_1, criteria_1, cell_range_to_count_2, criteria_2,...cell_range_to_count_n, criteria_n)
Wichtig: Jeder zusätzliche Bereich in COUNTIFS muss die gleiche Zeilen- und Spaltenanzahl haben wie der ursprüngliche Bereich (cell_range_to_count_1), sonst gibt es einen Fehler.
Diese beiden Funktionen sind großartig für Geschäftsberichte. Ein typischer Anwendungsfall: schnell zählen, wie viele Termine unser Vertrieb pro Monat vereinbart hat und wo sie sich im Sales-Funnel befinden.
In den folgenden Videos siehst du die Funktionen im Einsatz. Zuerst zählen wir die Gesamtzahl der Termine einiger fiktiver Vertriebsmitarbeitenden:
Ganz schön einfach, oder? Du hast gerade die Gesamttermine unserer fiktiven Vertriebsleute aufsummiert. Theoretisch ginge das auch mit einfachen IFs, aber der Aufwand wäre deutlich größer – bei identischem Ergebnis.
Angenommen, du willst zusätzlich die Termine pro Monat je Person ausweisen. Dann ist COUNTIFS() die richtige Wahl. Im Video unten siehst du es in Aktion:
Hinweis: Im letzten Video hast du gesehen, dass ich den zu zählenden Bereich mit $-Zeichen fixiert habe. So bleibt er unverändert, wenn ich die Formel nach unten ziehe.
Voilà – wir haben die Termine unserer Beispiel-Vertriebsteams monatsweise ausgewertet, ohne ins Schwitzen zu geraten. Übrigens könntest du das noch „effizienter“ schreiben, indem du mit $-Zeichen gezielt Zellen und Bereiche fixierst und die Formeln dann bequem ziehst (zum Beispiel die Formel in F2 schreiben und auf die restlichen Zellen ziehen). Ich habe COUNTIFS für Januar und Februar bewusst ausgeschrieben, um die Logik sichtbarer zu machen. Wenn du neugierig bist: Versuche die COUNTIFS()-Formel in F2 so umzuschreiben, dass du sie über die restlichen Zellen ziehen kannst und identische Ergebnisse erhältst. Das ist eine nützliche Übung, denn gerade bei größeren Excel-Berichten spart dir das geschickte Fixieren von Bereichen viel Zeit. Hier findest du die Datentabelle zu diesem Tutorial.
SUMIF() und SUMIFS()
Wir haben gesehen, wie du Zellen mit einem oder mehreren Kriterien zählst. Was aber, wenn du die betreffenden Zellen addieren willst statt sie nur zu zählen? Dann kommen SUMIF() und SUMIFS() ins Spiel. Diese Funktionen sind besonders praktisch, wenn du zum Beispiel den Umsatz pro Vertriebsmitarbeitenden insgesamt oder pro Monat addieren möchtest. Die Syntax lautet:
SUMIF(criteria_range, criteria, (optional) sum_range)
SUMIFS(sum_range, criteria_range_1, criteria_1, criterion_range_2, criteria_2...criteria_range_n, criteria_n)
Wobei gilt:
- criteria_range: Der Zellbereich, in dem das Kriterium geprüft wird.
- criteria: Das Kriterium, das steuert, welche Zellen addiert werden.
- sum_range: Der Bereich, dessen Werte addiert werden. Wenn er bei SUMIF() nicht angegeben ist, werden die Zellen in criteria_range addiert.
Schauen wir uns nun ein Beispiel an, das sowohl SUMIF() als auch SUMIFS() nutzt, um den Gesamtumsatz und den Monatsumsatz unserer fiktiven Vertriebsmitarbeitenden zu berechnen:
Spannend ist, dass bei SUMIFS() sum_range ein Pflichtargument ist und als erstes kommt, während es bei SUMIF() optional ist und zuletzt steht. Das kann verwirren, wie man beim Tippen von SUMIFS für Februar leicht merkt. Daher mein Rat: Sei aufmerksam, wenn du beide Formeln einsetzt, und prüfe immer, ob du die richtigen Zellbereiche addierst.
IFERROR()
Wenn du eine Programmier- oder Skriptsprache kennst, weißt du, dass es try/catch-Blöcke zur Fehlerbehandlung gibt. In Excel übernimmt IFERROR() genau diese Rolle. Mit IFERROR kannst du Fehler wie #N/A, #VALUE! oder #REF! „abfangen“ und eine sinnvollere Ausgabe liefern. Die Syntax der IFERROR-Funktion lautet:
IFERROR(value, value_if_error)
Wobei gilt:
- value: Der Wert oder die Formel, die auf Fehler geprüft wird
- value_if_error: Der Wert, der ausgegeben wird, wenn ein Fehler auftritt.
Im folgenden Video siehst du, wie das funktioniert:
Gerade in Vertriebsberichten ist es gute Praxis, bestimmte Berechnungen mit IFERROR abzusichern. Es kommt vor, dass neue Teammitglieder nur wenige Termine, qualifizierte Opportunities oder Abschlüsse haben. Beim Berechnen von Quoten, etwa dem Anteil der Termine, die zu qualifizierten Opportunities werden, führt das schnell zu Divisionen durch 0. Das erzeugt unschöne Fehlermeldungen, die deinen Bericht unruhig wirken lassen und die Lesbarkeit für Entscheider verschlechtern. Wenn du diese Berechnungen in IFERROR() kapselst, kannst du die Fehler durch etwas Augenfreundliches wie einen Gedankenstrich ersetzen – dein Bericht wirkt sofort sauberer. Darüber hinaus kannst du IFERROR() auch verschachteln, um zum Beispiel verkettete VLOOKUPs zu bauen.
Fazit
Glückwunsch! Du kennst jetzt mehrere Wege, Bedingungen in Excel wirkungsvoll einzusetzen. In diesem Tutorial habe ich die Funktionen abgedeckt, die ich in Praxisprojekten für Excel-Berichte besonders häufig nutze. Wenn du noch tiefer einsteigen willst, schau dir auch Funktionen wie SWITCH(), AVERAGEIF() oder AVERAGEIFS() an – die habe ich hier nicht behandelt, sie könnten für dich aber spannend sein.
Außerdem lassen sich in Funktionen wie COUNTIFS() Platzhalterzeichen verwenden, um Teiltreffer in Texten zu zählen. Angenommen, du hast eine Liste von Menüeinträgen eines Restaurants und möchtest wissen, wie viele davon das Wort "fish" enthalten. Dann könntest du COUNTIF(cell_range,"*fish") schreiben – damit würdest du Einträge wie swordfish oder dolphinfish mitzählen. Ich empfehle dir, dich mit Wildcards vertraut zu machen. Sie sind äußerst hilfreich und kommen in Excel-Projekten öfter zum Einsatz, als man denkt.
Schau dir auch den Kurs Data Analysis with Spreadsheets bei DataCamp an. Er enthält ein eigenes Kapitel zu bedingten Funktionen und eignet sich gut als Ergänzung.
Wirf außerdem einen Blick auf unser if…elif…else in Python Tutorial.