Power BI:如何将本年与上年业绩合并为单个度量值?
用单个DAX度量值实现本年/上年销售额展示
完全可以通过复用单个Sales度量值,配合视觉对象筛选或计算组来实现需求,无需维护两个重复度极高的度量值。
基础度量值
首先定义通用的销售额度量值:
Sales = SUM(my_table[SALES])
方法一:卡片级筛选(快速实现)
这种方法无需额外创建度量值,仅通过视觉对象的筛选规则实现:
- 本年销售额卡片:直接使用
Sales度量值,切片器选择的年份会自动筛选数据,无需额外设置。 - 上年销售额卡片:同样使用
Sales度量值,进入卡片的筛选器面板:- 添加
my_table[YEAR]字段到筛选条件 - 设置筛选规则为「等于」,并输入DAX表达式:
SELECTEDVALUE(my_table[YEAR]) - 1
- 添加
这样两个卡片会分别基于切片器年份,展示对应年份的销售额。
方法二:计算组(适合多场景复用)
如果需要在多个视觉对象中灵活切换本年/上年数据,推荐使用计算组:
- 在Power BI中创建新计算组,添加两个计算项:
- 本年销售额:
CALCULATE([Sales], my_table[YEAR] = SELECTEDVALUE(my_table[YEAR])) - 上年销售额:
CALCULATE([Sales], my_table[YEAR] = SELECTEDVALUE(my_table[YEAR]) - 1)
- 本年销售额:
- 将计算组的字段添加到卡片视觉对象中,选择对应的计算项即可,所有计算项都复用基础的
Sales度量值。
补充说明:你原来写的
Sales_this_year度量值其实存在冗余——切片器已经筛选了年份,CALCULATE里的my_table[YEAR] = V_year条件完全可以去掉,直接返回SUM(my_table[SALES])即可。
内容的提问来源于stack exchange,提问作者SRJCoding
相关产品推荐
相关产品推荐

