Power BI如何实现切片器选中年份显示截至财年末的历史记录
Power BI 切片器实现选中年份累计展示历史数据方案
核心逻辑是拆分切片器数据源和业务数据表,通过度量值自定义筛选规则,避开Power BI默认表关联的精准匹配限制。
1. 新建独立的切片器专用年份表
不要直接用原业务表的Year字段做切片器,单独创建一张无关联的年份维度表专门承载切片器选项。
在DAX公式栏输入以下命令新建计算表:SlicerYear = VALUES('你的业务表名'[Year])
建完后将这张表的Year字段拖入切片器,即可得到2020、2021、2022三个可选值。
- 禁止给
SlicerYear表和原业务表创建任何直连关系,否则会触发Power BI默认的等值匹配筛选,无法实现累计范围匹配的效果。
代码中
你的业务表名请替换为你实际存储Year、Records字段的表名称。
2. 编写筛选控制度量值
新建如下度量值,用来逐行判断数据是否属于截止选中年份的历史范围:
数据展示标记 = VAR 选中截止年份 = SELECTEDVALUE('SlicerYear'[Year]) RETURN IF( MAX('你的业务表名'[Year]) <= 选中截止年份, 1, 0 )
- 如果需要支持切片器多选年份(选多个年份时自动取最大年份作为截止节点),把公式里的
SELECTEDVALUE替换成MAX即可,其余逻辑不变。
3. 配置可视化对象的筛选规则
打开你用来展示Records数据的可视化对象(表格、统计卡片、趋势图均可)的筛选面板,在「此视觉对象的筛选器」区域添加刚才新建的数据展示标记度量值,设置筛选规则为等于 1,点击应用筛选即可完成配置。
效果校验
- 切片器选中2020:仅展示Year<=2020的2条2020年数据
- 切片器选中2021:展示Year<=2021的4条数据(包含2020、2021年所有记录)
- 切片器选中2022:展示全量6条历史数据
内容的提问来源于stack exchange,提问作者liam
相关产品推荐
相关产品推荐

