Del via


IF

gælder for:beregnet kolonneberegnet tabelberegning af målingvisualisering

Kontrollerer en betingelse og returnerer én værdi, når den er TRUE, ellers returneres en anden værdi.

Syntaks

IF(<logical_test>, <value_if_true>[, <value_if_false>])

Parametre

Udtryk 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 test er FALSE. Hvis den udelades, returneres BLANK.

Returværdi

Enten value_if_true, value_if_falseeller BLANK.

Bemærkninger

  • Funktionen IF kan returnere en variantdatatype, hvis value_if_true og value_if_false er af forskellige datatyper, men funktionen forsøger at returnere en enkelt datatype, hvis både value_if_true og value_if_false er af numeriske datatyper. I sidstnævnte tilfælde konverterer funktionen IF implicit datatyper, så de passer til begge værdier.

    Formlen IF(<condition>, TRUE(), 0) returnerer f.eks. TRUE eller 0, men formlen IF(<condition>, 1.0, 0) returnerer kun decimalværdier, selvom value_if_false er af datatypen heltal. Du kan få mere at vide om konvertering af implicitte datatyper under Datatyper.

  • Hvis du vil udføre forgreningsudtryk, uanset betingelsesudtrykket, skal du i stedet bruge IF.EAGER.

Eksempler

Følgende Product tabelberegnede kolonnedefinitioner bruger funktionen IF på forskellige måder til at klassificere hvert produkt på baggrund af listeprisen.

I det første eksempel testes det, om kolonneværdien for Listepris er mindre end 500. Når denne betingelse er true, returneres værdien Low. Da der ikke er nogen value_if_false værdi, returneres BLANK.

Eksempler i denne artikel kan bruges sammen med eksempelmodellen Adventure Works DW 2020 Power BI Desktop. 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 inkluderes en value_if_false værdi. Formlen klassificerer derfor 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 en IF funktion for at udføre en ekstra test. Formlen klassificerer derfor hvert produkt som enten Low, Mediumeller High.

Price Group =
IF(
    'Product'[List Price] < 500,
    "Low",
    IF(
        'Product'[List Price] < 1500,
        "Medium",
        "High"
    )
)

Drikkepenge

Når du har brug for at indlejre flere IF funktioner, kan funktionen SWITCH være en bedre løsning. Denne funktion giver en mere elegant måde at skrive et udtryk på, der returnerer mere end to mulige værdier.

IF.EAGER funktionSWITCH funktion (DAX)Logiske funktioner