Inhaltsverzeichnis
Das Tutorial zeigt, wie man in Excel mehrere WENN-Anweisungen mit UND- und ODER-Logik erstellt und wie man WENN zusammen mit anderen Excel-Funktionen verwendet.
Im ersten Teil unseres Excel-IF-Tutorials haben wir uns angesehen, wie man eine einfache IF-Anweisung mit einer Bedingung für Text, Zahlen, Datumsangaben, Leerzeichen und Nicht-Leerzeichen erstellt. Für eine aussagekräftige Datenanalyse müssen Sie jedoch oft mehrere Bedingungen gleichzeitig auswerten. Die folgenden Formelbeispiele zeigen Ihnen, wie Sie dies am effektivsten tun können.
Verwendung der IF-Funktion mit mehreren Bedingungen
Es gibt im Wesentlichen zwei Arten von IF-Formel mit mehreren Kriterien auf der Grundlage der UND/ODER-Logik Daher sollten Sie im logischen Test Ihrer IF-Formel eine dieser Funktionen verwenden:
- AND-Funktion - gibt TRUE zurück, wenn alle Bedingungen erfüllt sind; ansonsten FALSE.
- OR-Funktion - gibt TRUE zurück, wenn jede einzelne Bedingung erfüllt ist; andernfalls FALSE.
Zur besseren Veranschaulichung wollen wir uns einige Beispiele für Formeln aus dem wirklichen Leben ansehen.
Excel IF-Anweisung mit mehreren Bedingungen (AND-Logik)
Die allgemeine Formel von Excel IF mit zwei oder mehr Bedingungen lautet wie folgt:
WENN(UND( Zustand1 , Bedingung2 , ...), value_if_true, value_if_false)In eine menschliche Sprache übersetzt, lautet die Formel: Wenn Bedingung 1 wahr ist UND Bedingung 2 wahr ist, gib zurück wert_wenn_true ; sonst Rückgabe wert_wenn_false .
Angenommen, Sie haben eine Tabelle, in der die Ergebnisse von zwei Tests in den Spalten B und C aufgelistet sind. Um die Abschlussprüfung zu bestehen, muss ein Schüler beide Ergebnisse größer als 50 haben.
Für den logischen Test verwenden Sie die folgende AND-Anweisung: AND(B2>50, C2>50)
Wenn beide Bedingungen erfüllt sind, gibt die Formel "Bestanden" zurück; wenn eine der Bedingungen falsch ist - "Nicht bestanden".
=IF(AND(B2>50, B2>50), "Bestanden", "Nicht bestanden")
Der folgende Screenshot beweist, dass unsere Excel-WENN/UND-Formel richtig funktioniert:
In ähnlicher Weise können Sie die Excel-Funktion IF mit mehreren Textbedingungen .
Um beispielsweise "Gut" auszugeben, wenn sowohl B2 als auch C2 größer als 50 sind, andernfalls "Schlecht", lautet die Formel:
=IF(AND(B2="bestanden", C2="bestanden"), "Gut!", "Schlecht")
Wichtiger Hinweis: Die AND-Funktion prüft alle Bedingungen Ein solches Verhalten ist etwas ungewöhnlich, da in den meisten Programmiersprachen nachfolgende Bedingungen nicht getestet werden, wenn einer der vorherigen Tests FALSE ergeben hat.
In der Praxis kann eine scheinbar korrekte IF-Anweisung aufgrund dieser Besonderheit zu einem Fehler führen. Die unten stehende Formel würde beispielsweise #DIV/0! zurückgeben (Fehler "Dividieren durch Null"), wenn Zelle A2 gleich 0 ist:
=IF(AND(A20, (1/A2)>0.5), "Gut", "Schlecht")
Um dies zu vermeiden, sollten Sie eine verschachtelte IF-Funktion verwenden:
=IF(A20, IF((1/A2)>0.5, "Gut", "Schlecht"), "Schlecht")
Weitere Informationen finden Sie unter WENN UND-Formel in Excel.
Excel IF-Funktion mit mehreren Bedingungen (OR-Logik)
Eine Sache zu tun, wenn jede Bedingung erfüllt ist, andernfalls etwas anderes tun, verwenden Sie diese Kombination aus den Funktionen IF und OR:
WENN(OR( Zustand1 , Bedingung2 , ...), value_if_true, value_if_false)Der Unterschied zur oben beschriebenen WENN/UND-Formel besteht darin, dass Excel TRUE zurückgibt, wenn eine der angegebenen Bedingungen erfüllt ist.
Wenn wir also in der vorherigen Formel OR anstelle von AND verwenden:
=IF(OR(B2>50, B2>50), "Bestanden", "Nicht bestanden")
Dann erhält jeder, der in einer der beiden Prüfungen mehr als 50 Punkte erreicht, in Spalte D den Vermerk "Bestanden". Unter diesen Bedingungen haben unsere Schülerinnen und Schüler bessere Chancen, die Abschlussprüfung zu bestehen (wobei Yvette besonders viel Pech hatte, weil sie nur um einen Punkt scheiterte :)
Tipp: Falls Sie eine mehrere IF-Anweisungen mit Text und einen Wert in einer Zelle mit der ODER-Logik testen (d.h. eine Zelle kann "dies" oder "das" sein), dann können Sie eine kompaktere Formel mit einer Array-Konstante erstellen.
Um zum Beispiel einen Verkauf als "abgeschlossen" zu markieren, wenn in Zelle B2 entweder "geliefert" oder "bezahlt" steht, lautet die Formel:
=IF(OR(B2={"geliefert", "bezahlt"}), "abgeschlossen", "")
Weitere Formelbeispiele finden Sie in der Excel-Funktion IF OR.
IF mit mehreren AND & OR-Anweisungen
Wenn Ihre Aufgabe die Auswertung mehrerer Sätze von Mehrfachbedingungen erfordert, müssen Sie beide AND & OR-Funktionen auf einmal verwenden.
In unserer Beispieltabelle nehmen wir an, dass Sie die folgenden Kriterien für die Prüfung der Prüfungsergebnisse haben:
- Bedingung 1: Prüfung1>50 und Prüfung2>50
- Bedingung 2: Prüfung1>40 und Prüfung2>60
Wenn eine der beiden Bedingungen erfüllt ist, gilt die Abschlussprüfung als bestanden.
Die Formel erscheint auf den ersten Blick etwas kompliziert, ist es aber nicht! Man drückt einfach jede der oben genannten Bedingungen als UND-Anweisung aus und verschachtelt sie in der ODER-Funktion (da nicht beide Bedingungen erfüllt sein müssen, reicht eine davon aus):
OR(AND(B2>50, C2>50), AND(B2>40, C2>60)
Verwenden Sie dann die Funktion OR für den logischen Test von IF und geben Sie die gewünschte wert_wenn_true und wert_wenn_false Als Ergebnis erhalten Sie die folgende IF-Formel mit mehreren AND / OR-Bedingungen:
=IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")
Der folgende Screenshot zeigt, dass wir die Formel richtig gemacht haben:
Natürlich sind Sie nicht darauf beschränkt, nur zwei UND/ODER-Funktionen in Ihren WENN-Formeln zu verwenden, sondern können so viele davon einsetzen, wie Ihre Geschäftslogik erfordert, vorausgesetzt, dass:
- In Excel 2007 und höher haben Sie nicht mehr als 255 Argumente, und die Gesamtlänge der WENN-Formel darf 8.192 Zeichen nicht überschreiten.
- In Excel 2003 und niedriger gibt es nicht mehr als 30 Argumente, und die Gesamtlänge Ihrer IF-Formel darf 1.024 Zeichen nicht überschreiten.
Verschachtelte IF-Anweisung zur Überprüfung mehrerer logischer Tests
Wenn Sie mehrere logische Tests in einer einzigen Formel auswerten wollen, können Sie mehrere Funktionen ineinander schachteln. Solche Funktionen werden als verschachtelte IF-Funktionen Sie erweisen sich als besonders nützlich, wenn Sie je nach den Ergebnissen der logischen Tests unterschiedliche Werte zurückgeben möchten.
Hier ein typisches Beispiel: Nehmen wir an, Sie möchten die Leistungen der Schüler als " Gut ", " Zufriedenstellend " und " Schlecht " auf der Grundlage der folgenden Punktzahlen:
- Gut: 60 oder mehr (>=60)
- Befriedigend: zwischen 40 und 60 (>40 und <60)
- Schlecht: 40 oder weniger (<=40)
Bevor Sie eine Formel schreiben, sollten Sie die Reihenfolge der zu verschachtelnden Funktionen bedenken. Excel wertet die logischen Tests in der Reihenfolge aus, in der sie in der Formel erscheinen. Sobald eine Bedingung als WAHR bewertet wird, werden die nachfolgenden Bedingungen nicht mehr getestet, d. h. die Formel endet nach dem ersten WAHR-Ergebnis.
In unserem Fall sind die Funktionen vom größten zum kleinsten Wert angeordnet:
=IF(B2>=60, "Gut", IF(B2>40, "Befriedigend", "Schlecht"))
Natürlich können Sie bei Bedarf weitere Funktionen verschachteln (bis zu 64 in modernen Versionen).
Weitere Informationen finden Sie unter So verwenden Sie mehrere verschachtelte IF-Anweisungen in Excel.
Excel IF-Array-Formel mit mehreren Bedingungen
Eine andere Möglichkeit, einen Excel-WENN-Test auf mehrere Bedingungen anzuwenden, ist die Verwendung einer Array-Formel.
Um Bedingungen mit der UND-Logik auszuwerten, verwenden Sie das Sternchen:
WENN( Zustand1 ) * ( Bedingung2 ) * ..., value_if_true, value_if_false)Um Bedingungen mit der ODER-Logik zu testen, verwenden Sie das Pluszeichen:
WENN( Zustand1 ) + ( Bedingung2 ) + ..., value_if_true, value_if_false)Um eine Array-Formel korrekt abzuschließen, drücken Sie gleichzeitig die Tasten Strg + Umschalt + Eingabe. In Excel 365 und Excel 2021 funktioniert dies dank der Unterstützung für dynamische Arrays auch als reguläre Formel.
Um zum Beispiel "Bestanden" zu erhalten, wenn sowohl B2 als auch C2 größer als 50 sind, lautet die Formel:
=IF((B2>50) * (C2>50), "Bestanden", "Nicht bestanden")
In meinem Excel 365 funktioniert eine normale Formel sehr gut (wie Sie in den Screenshots oben sehen können). In Excel 2019 und niedrigeren Versionen müssen Sie eine Array-Formel erstellen, indem Sie die Tastenkombination Strg + Umschalt + Eingabe verwenden.
Um mehrere Bedingungen mit der ODER-Logik auszuwerten, lautet die Formel:
=IF((B2>50) + (C2>50), "Bestanden", "Nicht bestanden")
IF zusammen mit anderen Funktionen verwenden
In diesem Abschnitt wird erläutert, wie Sie WENN in Kombination mit anderen Excel-Funktionen verwenden können und welche Vorteile dies für Sie hat.
Beispiel 1: Wenn #N/A-Fehler in VLOOKUP
Wenn VLOOKUP oder eine andere Nachschlagefunktion etwas nicht finden kann, gibt sie einen #N/A-Fehler zurück. Um Ihre Tabellen schöner aussehen zu lassen, können Sie Null, Leerzeichen oder einen bestimmten Text zurückgeben, wenn #N/A. Verwenden Sie dazu diese allgemeine Formel:
IF(ISNA(VLOOKUP(...)), wert_wenn_na , VLOOKUP(...))Zum Beispiel:
Bei #N/A wird 0 zurückgegeben:
Wenn der Nachschlagewert in E1 nicht gefunden wird, gibt die Formel Null zurück.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))
Wenn #N/A, dann leer:
Wenn der Nachschlagewert nicht gefunden wird, gibt die Formel nichts zurück (eine leere Zeichenfolge).
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))
Bei #N/A wird ein bestimmter Text zurückgegeben:
Wenn der Nachschlagewert nicht gefunden wird, gibt die Formel einen bestimmten Text zurück.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Nicht gefunden", VLOOKUP(E1, A2:B10, 2, FALSE))
Weitere Formelbeispiele finden Sie unter VLOOKUP mit IF-Anweisung in Excel.
Beispiel 2: WENN mit den Funktionen SUMME, MITTELWERT, MIN und MAX
Um Zellwerte anhand bestimmter Kriterien zu summieren, bietet Excel die Funktionen SUMIF und SUMIFS.
In manchen Situationen kann es für Ihre Geschäftslogik erforderlich sein, die Funktion SUMME in den logischen Test von WENN einzubeziehen. Um beispielsweise je nach der Summe der Werte in B2 und C2 unterschiedliche Textbeschriftungen zurückzugeben, lautet die Formel:
=IF(SUM(B2:C2)>130, "Gut", IF(SUM(B2:C2)>110, "Befriedigend", "Schlecht"))
Ist die Summe größer als 130, ist das Ergebnis "gut"; ist sie größer als 110 - "befriedigend", ist sie kleiner als 110 - "schlecht".
In ähnlicher Weise können Sie die Funktion AVERAGE in den logischen Test von IF einbetten und auf der Grundlage des Durchschnittswerts verschiedene Bezeichnungen zurückgeben:
=IF(MITTELWERT(B2:C2)>65, "Gut", IF(MITTELWERT(B2:C2)>55, "Befriedigend", "Schlecht"))
Angenommen, die Gesamtpunktzahl steht in Spalte D, dann können Sie mit Hilfe der Funktionen MAX und MIN die höchsten und niedrigsten Werte ermitteln:
=IF(D2=MAX($D$2:$D$10), "Bestes Ergebnis", "")
=IF(D2=MAX($D$2:$D$10), "Bestes Ergebnis", "")
Um beide Beschriftungen in einer Spalte zu haben, verschachteln Sie die obigen Funktionen ineinander:
=IF(D2=MAX($D$2:$D$10), "Bestes Ergebnis", IF(D2=MIN($D$2:$D$10), "Schlechtestes Ergebnis", ""))
Ebenso können Sie IF zusammen mit Ihren benutzerdefinierten Funktionen verwenden, z. B. in Kombination mit GetCellColor oder GetCellFontColor, um unterschiedliche Ergebnisse auf der Grundlage einer Zellenfarbe zu erhalten.
Darüber hinaus bietet Excel eine Reihe von Funktionen zur Berechnung von Daten auf der Grundlage von Bedingungen. Ausführliche Formelbeispiele finden Sie in den folgenden Tutorials:
- COUNTIF - Zählen der Zellen, die eine Bedingung erfüllen
- COUNTIFS - Zellen mit mehreren Kriterien zählen
- SUMIF - Bedingte Summe der Zellen
- SUMIFS - Zellen mit mehreren Kriterien summieren
Beispiel 3: IF mit ISNUMBER, ISTEXT und ISBLANK
Zur Identifizierung von Text, Zahlen und leeren Zellen stellt Microsoft Excel spezielle Funktionen wie ISTEXT, ISNUMBER und ISBLANK zur Verfügung, die in die logischen Tests von drei verschachtelten IF-Anweisungen eingefügt werden können, um alle Datentypen auf einmal zu identifizieren:
=IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Zahl", IF(ISBLANK(A2), "Leer", "")))
Beispiel 4: IF und CONCATENATE
Um das Ergebnis von IF und einen Text in einer Zelle auszugeben, verwenden Sie die Funktionen CONCATENATE oder CONCAT (in Excel 2016 - 365) und IF zusammen, zum Beispiel:
=CONCATENATE("Sie haben ", IF(B1>100, "fantastisch!", IF(B1>50, "gut", "schlecht")))
=CONCAT("Sie haben ", IF(B1>100, "fantastisch!", IF(B1>50, "gut", "schlecht")))
Wenn Sie sich den Screenshot unten ansehen, brauchen Sie kaum eine Erklärung, was die Formel bewirkt:
IF ISERROR / ISNA-Formel in Excel
Die modernen Versionen von Excel verfügen über spezielle Funktionen, um Fehler abzufangen und durch eine andere Berechnung oder einen vordefinierten Wert zu ersetzen - IFERROR (in Excel 2007 und höher) und IFNA (in Excel 2013 und höher). In früheren Excel-Versionen können Sie stattdessen die Kombinationen IF ISERROR und IF ISNA verwenden.
Der Unterschied besteht darin, dass IFERROR und ISERROR alle möglichen Excel-Fehler behandeln, einschließlich #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! und #NULL!, während IFNA und ISNA ausschließlich auf #N/A-Fehler spezialisiert sind.
Um zum Beispiel den Fehler "Teilen durch Null" (#DIV/0!) durch Ihren eigenen Text zu ersetzen, können Sie die folgende Formel verwenden:
=IF(ISERROR(A2/B2), "N/A", A2/B2)
Und das ist alles, was ich über die Verwendung der WENN-Funktion in Excel zu sagen habe. Ich danke Ihnen für die Lektüre und hoffe, Sie nächste Woche in unserem Blog begrüßen zu dürfen!
Übungsheft zum Herunterladen
Excel IF mehrere Kriterien - Beispiele (.xlsx-Datei)