本篇汇总 DAX「逻辑函数」共 11 个函数,常用函数标 🔥。每个函数附语法、示例与参数说明。

函数 说明 语法 示例
AND 🔥 检查所有参数是否均为 TRUE。 AND(<logical1>, <logical2>) AND(Sales[Amount] > 1000, Sales[Quantity] > 5)
CHOOSE 🔥 从值列表中返回指定位置的值。 CHOOSE(<index>, <value1>, [<value2>]) CHOOSE(2, "Red", "Green", "Blue")
IF 🔥 检查条件,如果条件为 TRUE,则返回一个值;否则返回另一个值。 IF(<logical_test>, <value_if_true>, [<value_if_false>]) IF(Sales[Amount] > 1000, "High", "Low")
IFERROR 🔥 如果表达式返回错误,则返回指定值;否则返回表达式结果。 IFERROR(<value>, <value_if_error>) IFERROR(Sales[Amount] / Sales[Quantity], 0)
OR 🔥 检查是否任一参数为 TRUE。 OR(<logical1>, <logical2>) OR(Sales[Amount] > 1000, Sales[Quantity] > 10)
SWITCH 🔥 根据值列表计算表达式,返回第一个匹配值的结果。 SWITCH(<expression>, <value>, <result>, [<value>, <result>], [<else>]) SWITCH(Sales[Region], "North", 1000, "South", 2000, 0)
COALESCE 返回第一个非空值。 COALESCE(<value1>, <value2>) COALESCE(BLANK(), "Default")
FALSE 返回逻辑值 FALSE。 FALSE() FALSE()
IFNA 如果表达式结果为 #N/A,则返回指定值。 IFNA(<value>, <value_if_na>) IFNA(LOOKUPVALUE(Products[Name], Products[ID], Sales[ProductID]), "Not Found")
NOT 返回逻辑值的相反值。 NOT(<logical>) NOT(Sales[Amount] > 1000)
TRUE 返回逻辑值 TRUE。 TRUE() IF(Sales[Amount] > 1000, TRUE(), FALSE())

热门函数参数详解

AND

检查所有参数是否均为 TRUE。

参数 说明
logical1 要测试的第一个条件。
logical2 要测试的第二个条件。可以添加更多条件。

CHOOSE

从值列表中返回指定位置的值。

参数 说明
index 要选择的位置(从1开始)。
value1 第一个值。
value2... (可选)更多值。

IF

检查条件,如果条件为 TRUE,则返回一个值;否则返回另一个值。

参数 说明
logical_test 要测试的条件,返回 TRUE 或 FALSE。
value_if_true 条件为 TRUE 时返回的值。
value_if_false (可选)条件为 FALSE 时返回的值。如果省略,默认返回 BLANK。

IFERROR

如果表达式返回错误,则返回指定值;否则返回表达式结果。

参数 说明
value 要检查的表达式。
value_if_error 表达式出错时返回的值。

OR

检查是否任一参数为 TRUE。

参数 说明
logical1 要测试的第一个条件。
logical2 要测试的第二个条件。可以添加更多条件。

SWITCH

根据值列表计算表达式,返回第一个匹配值的结果。

参数 说明
expression 要计算的表达式。
value, result 值与结果的对。可以有多对。
else (可选)没有匹配值时返回的结果。

由在线工具箱(www.vba.net)整理制作