IF
Kontrollerer en betingelse og returnerer én værdi, når den er TRUE, i modsat fald returnerer den en anden værdi.
Syntaks
IF(<logical_test>, <value_if_true>[, <value_if_false>])
Parametre
| Begreb | Definition |
|---|---|
| logical_test | Alle værdier eller udtryk, der kan evalueres til TRUE eller FALSE. |
| value_if_true | Den værdi, der returneres, hvis den logiske test er TRUE. |
| value_if_false | (Valgfrit) Den værdi, der returneres, hvis den logiske værdi er FALSE. Hvis den undlades, returneres BLANK. |
Returværdi
Enten value_if_true, value_if_false eller BLANK.
Bemærkninger
Funktionen IF kan returnere variantdatatypen, hvis value_if_true og value_if_false er forskellige datatyper, men funktionen forsøger at returnere en enkelt datatype, hvis både value_if_true og value_if_false er numeriske datatyper. I sidstnævnte tilfælde vil funktionen IF implicit konvertere datatyper, så de passer til begge værdier.
Formlen returnerer f.eks. TRUE eller 0, men formlen returnerer kun decimalværdier, selvom value_if_false er af
IF(<condition>, TRUE(), 0)IF(<condition>, 1.0, 0)datatypen helt tal.IF(<condition>, TRUE(), 0)Hvis du vil vide mere om konvertering af implicitte datatyper, skal du se Datatyper.Hvis du vil udføre forgreningsudtrykene, uanset betingelsesudtrykket, skal du bruge IF. EAGER i stedet for.
Eksempler
I følgende definition af en beregnet kolonne for tabellen Product kan du bruge funktionen IF på forskellige måder til at klassificere hvert enkelt produkt på baggrund af dets listepris.
Det første eksempel tester, om værdien i kolonnen List Price er mindre end 500. Når denne betingelse er sand, returneres værdien Low. Da der ikke er nogen værdi for value_if_false, returneres BLANK.
Eksempler i denne artikel kan føjes til eksempelmodellen Power BI Desktop modeleksempel. Hvis du vil hente modellen, skal du se DAX-eksempelmodel.
Price Group =
IF(
'Product'[List Price] < 500,
"Low"
)
I det andet eksempel bruges den samme test, men denne gang omfatter den en value_if_false-værdi. Derfor klassificerer formlen hvert produkt som enten Low eller High.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
"High"
)
I det tredje eksempel bruges den samme test, men denne gang indlejres der en IF-funktion, der skal udføre en ekstra test. Derfor klassificerer formlen hvert produkt som enten Low, Medium eller High.
Price Group =
IF(
'Product'[List Price] < 500,
"Low",
IF(
'Product'[List Price] < 1500,
"Medium",
"High"
)
)
Tip
Når du har brug for at indlejre flere IF-funktioner, kan funktionen SWITCH være en bedre mulighed. Denne funktion er en mere elegant metode at skrive et udtryk på, der returnerer mere end to mulige værdier.
Se også
HVIS. Funktionen EAGER
Funktionen SWITCH (DAX)
Logiske funktioner