You need to enable JavaScript to run this app. Power BI DAX 动态性能百分比计算公式编写咨询
优惠活动
大模型
产品
解决方案
定价
更多

Power BI DAX 动态性能百分比计算公式编写咨询

前置准备

首先确保你的数据模型满足以下要求:

  • 存在连续且被标记为日期表的日期维度表,包含年、月、年月等可用于筛选的维度字段
  • 日期维度表和销售额事实表已建立单方向一对多关联

基础通用度量

两个场景都需要用到的基础度量先提前定义:

当月销售额 = SUM('销售表'[Sales])

场景1:对比2020年12月性能%

分母固定为2020年12月销售额,不受用户筛选的月份影响,度量写法如下:

性能%_同比2020年12月 = 
VAR 2020年12月销售额 = CALCULATE([当月销售额], ALL('日期表'), '日期表'[年] = 2020, '日期表'[月] = 12)
RETURN DIVIDE([当月销售额], 2020年12月销售额, 0)

说明:DIVIDE第三个参数为分母为空/为0时的默认返回值,你可以根据需求调整为BLANK()


场景2:对比上月性能%

分母为用户选中月份的上一个月销售额,动态随筛选变动,度量写法如下:

性能%_环比上月 = 
VAR 上月销售额 = CALCULATE([当月销售额], PREVIOUSMONTH('日期表'[日期]))
RETURN DIVIDE([当月销售额], 上月销售额, 0)

说明:若用户选中多个月份,该度量默认返回选中区间最后一个月和前一个月的比值


可选优化:双场景动态切换

如果需要让用户通过下拉选择切换两种计算逻辑,可按以下步骤配置:

  1. 新建独立计算表,用于存放计算类型选项:
    计算类型 = DATATABLE("计算方式", STRING, {{"同比2020年12月"}, {"环比上月"}})
  2. 新建动态度量,读取用户选择的计算类型返回对应结果:
动态性能% = 
SWITCH(
    SELECTEDVALUE('计算类型'[计算方式]),
    "同比2020年12月", [性能%_同比2020年12月],
    "环比上月", [性能%_环比上月],
    0
)

最后将上述百分比类度量的格式设置为百分比即可直接使用。

内容的提问来源于stack exchange,提问作者YashRastogi94

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 16:54:05