You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power BI DAX月度累计求和实现问题求助

Power BI月度累计求和DAX修正方案

原度量值返回总计的核心问题:FILTER子句中,两边的'Calendar Table'[Date]均来自ALLSELECTED后的日期表,没有绑定当前视觉对象上下文的月份日期,导致过滤条件等价于保留所有日期,最终计算出全局总计。

修正方案一:基于当前月份上下文的累计

通过变量捕获当前月份的最大日期(即当月最后一天),再筛选所有早于或等于该日期的记录:

RT FAC = 
VAR CurrentMonthEnd = MAX('Calendar Table'[Date])
RETURN
CALCULATE (
    SUM('Injuries'[Total]),
    'Injuries'[Classification] = "FAC",
    ALLSELECTED('Calendar Table'),
    'Calendar Table'[Date] <= CurrentMonthEnd
)

修正方案二:年度内累计(简化写法)

如果仅需要自然年度内的月度累计,可使用TOTALYTD函数直接实现:

RT FAC = 
TOTALYTD(
    SUM('Injuries'[Total]),
    'Calendar Table'[Date],
    ALLSELECTED('Calendar Table'),
    'Injuries'[Classification] = "FAC"
)

修正方案三:跨年度全周期累计

若需要从数据起始日期到当前月份的累计(不受年度限制):

RT FAC = 
VAR CurrentDate = MAX('Calendar Table'[Date])
VAR StartDate = MINX(ALLSELECTED('Calendar Table'), 'Calendar Table'[Date])
RETURN
CALCULATE (
    SUM('Injuries'[Total]),
    'Injuries'[Classification] = "FAC",
    'Calendar Table'[Date] >= StartDate && 'Calendar Table'[Date] <= CurrentDate
)

关键注意事项

  • 确保视觉对象的轴使用日期表的月份层级(如「年份-月份」组合字段),而非单独的日期列,让Power BI正确识别每个月份的上下文范围。
  • 需将Calendar Table标记为Power BI的日期表(建模选项卡 → 标记为日期表),保障时间智能函数正常运行。

内容的提问来源于stack exchange,提问作者B.Germ

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 00:31:18