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

Power BI矩阵视觉中度量值引用行时返回错误值排查

问题描述

现有两个表:

  • Scope表:
ScopeIndex
National0
State1
NY2
CA3
  • State表:
StateIndexScope
NY2State
CA3State

两表通过Scope列建立关系,且使用Scope[Scope]作为切片器。编写的度量值如下:

StateisSelectedScope = 
IF(SELECTEDVALUE('Scope'[Scope]) = SELECTEDVALUE(State[State]), 1, 0)

但选中切片器中的NY时,矩阵中所有值都为0,预期结果应为:

StateStateisSelectedScope
NY1
CA0

请问公式遗漏了什么?

问题原因

当你在切片器选中NY时,两表的关联关系会自动筛选State表,此时State表只剩下NY这一行数据。矩阵里显示的CA行处于筛选上下文之外,SELECTEDVALUE(State[State])在CA行返回空白值,和选中的NY不相等,所以整个矩阵都返回0。

解决方案

修改度量值,忽略关系对State表的筛选,保留所有州的行,再判断当前行的州名是否等于选中的Scope值:

StateisSelectedScope = 
VAR SelectedScope = SELECTEDVALUE('Scope'[Scope])
RETURN
IF(MAX(State[State]) = SelectedScope, 1, 0)

如果需要更严谨地处理空白情况(比如切片器未选中任何值时),可以用:

StateisSelectedScope = 
VAR SelectedScope = SELECTEDVALUE('Scope'[Scope])
RETURN
IF(
    NOT ISBLANK(SelectedScope) && MAX(State[State]) = SelectedScope,
    1,
    0
)

解释:用MAX(State[State])获取当前矩阵行对应的州名(矩阵行上下文里每个行对应唯一State值,MAX不会因筛选上下文丢失返回空白),再和切片器选中的Scope值比较,即可得到正确结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 10:02:49