Power BI钻取场景下忽略钻取筛选,获取Sheet1中column_A原始切片器选中值的方法咨询
获取Sheet1原始选中值的解决方案
这个问题在Power BI钻取场景里挺常见的——钻取后筛选上下文被限制到子组,导致常规方法拿不到原始选中值。这里有几个可行的方案:
核心方法:用
ALLSELECTED锁定Sheet1的原始筛选
你需要创建一个引用Sheet1中column_A字段的度量值,利用ALLSELECTED来保留钻取前的选中状态。比如:Sheet1 选中的 Column A 值 = CONCATENATEX( ALLSELECTED('Sheet1'[column_A]), 'Sheet1'[column_A], ", " )这个度量值会遍历Sheet1中所有被选中的
column_A值,并用逗号拼接起来。关键在于明确指定Sheet1的表,而不是用Sheet2中的字段,这样就能绕过钻取带来的子组限制,直接获取原始选中集合。确保切片器同步的底层逻辑正确
要保证两张Sheet的column_A切片器是基于同一个模型字段同步的,而不是各自Sheet的独立字段。如果你的Sheet1和Sheet2对应模型里的不同表,一定要确认它们的column_A已经建立了正确的关系,这样ALLSELECTED才能正确识别跨表的筛选上下文。特殊场景:单个选中值的情况
如果你只需要获取单个选中值(而非多选集合),可以简化为:Sheet1 选中的单个 Column A 值 = SELECTEDVALUE('Sheet1'[column_A])这个函数会直接返回Sheet1中被选中的单个值,同样不受Sheet2钻取上下文的限制。
原理说明:ALLSELECTED函数的作用是返回当前筛选上下文中用户明确选中的所有值,它会保留来自钻取操作之前的筛选状态,只要我们引用的是原始筛选来源(Sheet1的column_A),就能绕过钻取带来的子组筛选限制。
内容的提问来源于stack exchange,提问作者Andras E.




