如何在PowerBI钻取页面制作可显示多列所选值的卡片?
PowerBI钻取页面显示所选内容的解决方案
方法1:用COALESCE组合多列SelectedValue
直接把多个列的SELECTEDVALUE用COALESCE函数串联,它会自动返回第一个非空的结果,解决嵌套时只有第一列生效的问题。
创建度量值:
钻取所选内容 = COALESCE(SELECTEDVALUE('你的表名'[Drinks]), SELECTEDVALUE('你的表名'[Food]), "未选择具体内容")
把这个度量值拖进卡片视觉对象,不管是从Drinks列还是Food列钻取,都会显示对应的选中值;如果没有钻取动作,会显示默认提示文本。
方法2:显示列名+值的详细格式
如果想让用户更清楚选中的是哪一类内容(比如“饮品:橙汁”),可以用ISFILTERED配合SWITCH判断当前筛选的列,再拼接文本:
创建度量值:
钻取所选详情 = SWITCH(TRUE(), ISFILTERED('你的表名'[Drinks]), "饮品:" & SELECTEDVALUE('你的表名'[Drinks]), ISFILTERED('你的表名'[Food]), "食物:" & SELECTEDVALUE('你的表名'[Food]), "未进行钻取选择" )
额外技巧:增强用户感知的辅助方案
- 开启钻取面包屑:在钻取页面的「页面设置」里勾选「显示钻取面包屑」,页面顶部会自动显示钻取的层级路径,用户一眼就能看到自己是从哪个值钻进来的。
- 固定提示文本:在卡片旁边加一个文本框,写死“当前钻取内容:”,和动态度量值的卡片搭配,用户更容易理解显示内容的含义。
- 多列同时筛选的兼容方案:如果存在多列同时被筛选的场景,可用
CONCATENATEX把所有筛选的列值拼接起来:
所有钻取内容 = CONCATENATEX( UNION( SELECTCOLUMNS('你的表名', "内容", "饮品:" & '你的表名'[Drinks]), SELECTCOLUMNS('你的表名', "内容", "食物:" & '你的表名'[Food]) ), [内容], ", " )
内容的提问来源于stack exchange,提问作者marty sevi
相关产品推荐
相关产品推荐

