如何在PowerBI卡片中显示切片器选中的层级筛选结果?
PowerBI卡片展示切片器选中的财年-层级内容实现方案
需求说明
想要在PowerBI卡片中展示切片器选中的层级内容,期望格式为:FY23: Q1, Q2, Q3, Q4;FY24: Q1,但现有DAX代码仅能展示选中的财年列表,无法关联对应季度。
现有代码:
Selected FY = IF( ISFILTERED( 'Calendar'[Fiscal Year] ), CONCATENATEX( DISTINCT( 'Calendar'[Fiscal Year] ) ,'Calendar'[Fiscal Year] ,", " ), "No filter selected" )
期望效果示意:
解决方案
需要通过嵌套CONCATENATEX实现按财年分组、拼接对应季度的效果,修改后的DAX度量值如下:
Selected FY & Quarters = VAR SelectedYears = DISTINCT('Calendar'[Fiscal Year]) VAR YearQuarterPairs = CONCATENATEX( SelectedYears, // 每个财年拼接对应的季度列表 [Fiscal Year] & ": " & CONCATENATEX( FILTER('Calendar', 'Calendar'[Fiscal Year] = EARLIER([Fiscal Year])), 'Calendar'[Fiscal Quarter], ", " ), ";" // 财年之间的分隔符 ) RETURN IF(ISFILTERED('Calendar'[Fiscal Year]), YearQuarterPairs, "No filter selected")
代码逻辑说明
- 用
SelectedYears变量提取所有选中的财年 - 外层
CONCATENATEX遍历每个选中的财年,内层CONCATENATEX筛选出当前财年下的所有选中季度并拼接 - 用
";"作为不同财年组之间的分隔符,匹配期望的展示格式 - 保留原有的无筛选时的提示文本
使用方式
- 将上述度量值添加到PowerBI模型中
- 在卡片视觉对象中拖入该度量值
- 确保切片器关联的是
Calendar表的财年/季度字段,筛选后卡片将自动按期望格式展示选中内容
内容的提问来源于stack exchange,提问作者symkly
相关产品推荐
相关产品推荐

