You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DAX多IF语句问题求助:公式全部返回Main Plant

DAX公式错误排查与修正

问题根源

你的公式逻辑运算符使用错误。DAX中,||(OR)两侧必须是完整的布尔判断表达式,不能直接写字符串值。单独的非空字符串(比如"201")会被DAX解析为TRUE,导致第一个IF条件[Department] = "200" || "201" || ...等价于([Department] = "200") || TRUE || TRUE || ...,结果永远为TRUE,所以所有行都会返回"Main Plant"。

修正方案

方案1:补全完整的OR判断表达式

把每个OR分支都写成[Department] = "XXX"的形式:

Shop v2 = 
IF(
    [Department] = "200" || [Department] = "201" || [Department] = "202" || [Department] = "203" || [Department] = "205" || [Department] = "206" || [Department] = "207", 
    "Main Plant", 
    IF(
        [Department] = "250" || [Department] = "254", 
        "Mt. Athos Plant",
        IF(
            [Department] = "300" || [Department] = "301" || [Department] = "302" || [Department] = "303" || [Department] = "305" || [Department] = "306" || [Department] = "307", 
            "South Plant",
            IF(
                MID(TRIM([Account]),4,3) = "600" || MID(TRIM([Account]),4,3) = "601" || MID(TRIM([Account]),4,3) = "602" || MID(TRIM([Account]),4,3) = "603" || MID(TRIM([Account]),4,3) = "604" || MID(TRIM([Account]),4,3) = "605" || MID(TRIM([Account]),4,3) = "606" || MID(TRIM([Account]),4,3) = "607", 
                "Rock Hill Plant", 
                "Not Available"
            )
        )
    )
)

方案2:使用IN函数简化逻辑(推荐)

DAX的IN函数可以直接判断值是否在指定列表中,代码更简洁易读:

Shop v2 = 
IF(
    [Department] IN {"200","201","202","203","205","206","207"}, 
    "Main Plant", 
    IF(
        [Department] IN {"250","254"}, 
        "Mt. Athos Plant",
        IF(
            [Department] IN {"300","301","302","303","305","306","307"}, 
            "South Plant",
            IF(
                MID(TRIM([Account]),4,3) IN {"600","601","602","603","604","605","606","607"}, 
                "Rock Hill Plant", 
                "Not Available"
            )
        )
    )
)

额外优化建议

如果判断逻辑后续可能调整,建议创建一个映射表(比如包含Department/AccountSegment和PlantName的表),然后用LOOKUPVALUE或关系匹配来获取工厂名称,比嵌套IF更易维护。

内容的提问来源于stack exchange,提问作者SneakyKeys1025

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 21:27:23