Partager via


IF

s’applique à :colonne calculéetable calculéemesurecalcul visuel

Vérifie une condition et retourne une valeur lorsqu’elle est TRUE, sinon elle retourne une deuxième valeur.

Syntaxe

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

Paramètres

Terme Définition
logical_test Toute valeur ou expression pouvant être évaluée à TRUE ou FALSE.
value_if_true Valeur retournée si le test logique est TRUE.
value_if_false (Facultatif) Valeur retournée si le test logique est FALSE. En cas d’omission, BLANK est retourné.

Valeur de retour

value_if_true, value_if_falseou BLANK.

Remarques

  • La fonction IF peut retourner un type de données variant si value_if_true et value_if_false sont de types de données différents, mais la fonction tente de retourner un type de données unique si value_if_true et value_if_false sont des types de données numériques. Dans ce dernier cas, la fonction IF convertit implicitement les types de données pour prendre en charge les deux valeurs.

    Par exemple, la formule IF(<condition>, TRUE(), 0) retourne TRUE ou 0, mais la formule IF(<condition>, 1.0, 0) retourne uniquement des valeurs décimales, même si value_if_false est du type de données nombre entier. Pour en savoir plus sur la conversion implicite des types de données, consultez types de données.

  • Pour exécuter les expressions de branche indépendamment de l’expression de condition, utilisez IF.EAGER à la place.

Exemples

Les définitions de colonnes calculées de la table Product suivantes utilisent la fonction IF de différentes manières pour classifier chaque produit en fonction de son prix de liste.

Le premier exemple teste si la valeur de colonne List Price est inférieure à 500. Lorsque cette condition est true, la valeur Low est retournée. Étant donné qu’il n’existe aucune valeur value_if_false, BLANK est retournée.

Les exemples de cet article peuvent être utilisés avec l’exemple de modèle Adventure Works DW 2020 Power BI Desktop. Pour obtenir le modèle, consultez DAX exemple de modèle.

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

Le deuxième exemple utilise le même test, mais cette fois inclut une valeur value_if_false. Par conséquent, la formule classifie chaque produit comme Low ou High.

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

Le troisième exemple utilise le même test, mais cette fois imbrication d’une fonction IF pour effectuer un test supplémentaire. Par conséquent, la formule classifie chaque produit comme Low, Mediumou High.

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

Pourboire

Lorsque vous devez imbriquer plusieurs fonctions IF, la fonction SWITCH peut être une meilleure option. Cette fonction offre un moyen plus élégant d’écrire une expression qui retourne plus de deux valeurs possibles.

IF.EAGER fonctionSWITCH fonction (DAX)fonctions logiques