Zdieľať cez


IF

Vzťahuje sa na: Vypočítaný stĺpec Vypočítaná tabuľka Výpočet mierky Vizuál

Skontroluje podmienku a keď je splnená (TRUE), vráti jednu hodnotu, v opačnom prípade vráti druhú hodnotu.

Syntax

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

Parametre

Obdobie Definícia
logický_test Všetky hodnoty alebo výrazy, ktoré možno vyhodnotiť na hodnotu TRUE alebo FALSE.
value_if_true Hodnota, ktorá sa vráti v prípade, že logický test skončí s hodnotou TRUE.
value_if_false (Voliteľné) Hodnota, ktorá sa vráti v prípade, že logický test skončí s hodnotou FALSE. Ak je tento parameter vynechaný, vráti sa hodnota BLANK.

Vrátená hodnota

Buď value_if_true, value_if_false alebo BLANK.

Poznámky

  • Funkcia IF môže vrátiť variantný typ údajov, ak value_if_true a value_if_false sú rôznymi typmi údajov, ale funkcia sa pokúsi vrátiť jeden typ údajov, ak value_if_true aj value_if_false sú číselnými typmi údajov. V druhom prípade funkcia IF implicitne konvertuje typy údajov tak, aby sa prispôsobili obom hodnotám.

    Napríklad vzorec IF(<condition>, TRUE(), 0) vráti hodnotu TRUE alebo 0, ale vzorec IF(<condition>, 1.0, 0) vráti iba desatinné hodnoty, aj keď value_if_false je typom údajov Celé číslo. Ďalšie informácie o implicitnej konverzii typu údajov nájdete v téme Typy údajov.

  • Ak chcete vykonať výrazy vetvy bez ohľadu na výraz podmienky, použite if . NAMIESTO TOHO SA NEDOČKAVÝ .

Príklady

Nasledujúce definície vypočítaných stĺpcov tabuľky Produkt používajú funkciu IF rôznymi spôsobmi na klasifikáciu jednotlivých produktov na základe ich jednotkovej ceny.

V prvom príklade sa testuje, či je hodnota stĺpca Jednotková cena menšia ako 500. Keď je táto podmienka pravdivá, vráti sa hodnota Nízka . Pretože neexistuje žiadna value_if_false hodnota, vráti sa hodnota BLANK.

Príklady v tomto článku možno použiť so vzorovým modelom aplikácie Power BI Desktop Adventure Works DW 2020. Ak chcete získať tento model, pozrite si tému Ukážkový model DAX.

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

Druhý príklad používa rovnaký test, tentokrát však obsahuje hodnotu value_if_false . Vzorec tak klasifikuje každý produkt buď ako Nízka alebo Vysoká.

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

Tretí príklad používa rovnaký test, ale tentokrát vnára funkciu IF na vykonanie ďalšieho testu. Vzorec tak klasifikuje každý produkt buď ako Nízka, Stredná alebo Vysoká.

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

Prepitné

Keď potrebujete vnoriť viacero funkcií IF, lepšou možnosťou môže byť funkcia SWITCH . Táto funkcia poskytuje elegantnejší spôsob, ako zapísať výraz, ktorý vracia viac ako dve možné hodnoty.

AK. Funkcia EAGER
Funkcia SWITCH (DAX)
Logické funkcie