IF
Gilt für:Berechnete SpalteBerechnete TabelleMeasurevisuelle Berechnung
Überprüft eine Bedingung und gibt einen Wert zurück, wenn es TRUE
ist, andernfalls wird ein zweiter Wert zurückgegeben.
Syntax
IF(<logical_test>, <value_if_true>[, <value_if_false>])
Parameter
Ausdruck | Definition |
---|---|
logical_test |
Jeder Wert oder Ausdruck, der ausgewertet werden kann, um TRUE oder FALSE . |
value_if_true |
Der Wert, der zurückgegeben wird, wenn der logische Test TRUE ist. |
value_if_false |
(Optional) Der Wert, der zurückgegeben wird, wenn der logische Test FALSE ist. Wenn nicht angegeben, wird BLANK zurückgegeben. |
Rückgabewert
Entweder value_if_true
, value_if_false
oder BLANK
.
Bemerkungen
Die IF-Funktion kann einen Variant-Datentyp zurückgeben, wenn
value_if_true
undvalue_if_false
von unterschiedlichen Datentypen sind, aber die Funktion versucht, einen einzelnen Datentyp zurückzugeben, wenn sowohlvalue_if_true
als auchvalue_if_false
numerische Datentypen sind. In letzterem Fall konvertiert die IF-Funktion implizit Datentypen, um beide Werte zu berücksichtigen.Beispielsweise gibt die Formel
IF(<condition>, TRUE(), 0)
TRUE
oder 0 zurück, aber die FormelIF(<condition>, 1.0, 0)
nur Dezimalwerte zurück, obwohlvalue_if_false
den Datentyp "ganze Zahl" aufweist. Weitere Informationen zur impliziten Datentypkonvertierung finden Sie unter Datentypen.Um die Verzweigungsausdrücke unabhängig vom Bedingungsausdruck auszuführen, verwenden Sie stattdessen IF.EAGER.
Beispiele
Im folgenden berechneten Tabellenspaltendefinitionen werden die IF Funktion auf unterschiedliche Weise verwendet, um jedes Produkt basierend auf seinem Listenpreis zu klassifizieren.
Im ersten Beispiel wird überprüft, ob der Listenpreis Spaltenwert kleiner als 500 ist. Wenn diese Bedingung zutrifft, wird der Wert Low zurückgegeben. Da kein value_if_false
Wert vorhanden ist, wird BLANK zurückgegeben.
Beispiele in diesem Artikel können mit dem Beispielmodell Adventure Works DW 2020 Power BI Desktop verwendet werden. Informationen zum Abrufen des Modells finden Sie unter DAX Beispielmodell.
Price Group =
IF(
'Product'[List Price] < 500,
"Low"
)
Im zweiten Beispiel wird derselbe Test verwendet, dieses Mal enthält jedoch einen value_if_false
Wert. Die Formel klassifiziert also jedes Produkt entweder als Low
oder High
.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
"High"
)
Im dritten Beispiel wird derselbe Test verwendet. Dieses Mal schachtelt jedoch eine IF Funktion, um einen zusätzlichen Test durchzuführen. Die Formel klassifiziert also jedes Produkt entweder als Low
, Medium
oder High
.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
IF(
'Product'[List Price] < 1500,
"Medium",
"High"
)
)
Trinkgeld
Wenn Sie mehrere IF Funktionen schachteln müssen, ist die SWITCH-Funktion möglicherweise eine bessere Option. Diese Funktion bietet eine elegantere Methode zum Schreiben eines Ausdrucks, der mehr als zwei mögliche Werte zurückgibt.