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

DAX实现度量值空白填充:取财年期初HC填充全财年各月

用DAX实现财年期初HC批量填充同财年所有财月

核心思路

根据你的需求(财年从8月开始,同财年所有月份显示8月的期初HC),正确逻辑是锁定当前财年第一个财月的期初HC值,将其填充到该财年的所有财月行中,而非提取“最新非空白值”(因为期初值是财年起始月的数值,是该财年最早的有效HC)。

实现步骤

假设你已有计算单月期初HC的基础度量期初HC,可以创建以下新度量来实现批量填充:

1. 财年统一期初HC度量

财年统一期初HC = 
VAR 当前财年 = MAX(日期表[财年])
// 获取当前财年的第一个财月
VAR 财年首月 = 
    CALCULATETABLE(
        TOPN(1, 日期表, 日期表[财月序号], ASC),
        FILTER(ALL(日期表), 日期表[财年] = 当前财年)
    )
// 计算财年首月的期初HC
VAR 财年期初HC = 
    CALCULATE(
        [期初HC],
        财年首月
    )
RETURN
    财年期初HC

代码说明

  • 当前财年:捕获矩阵当前行对应的财年
  • 财年首月:筛选出当前财年中财月序号最小的月份(即财年起始月)
  • 财年期初HC:在财年首月的上下文下计算期初HC,最终返回这个固定值,实现同财年所有月份统一显示该值

备选方案:提取财年内最新非空白HC值

如果确实需要提取当前财年内最新的非空白HC值来填充空白,可以使用以下度量:

财年最新非空白HC = 
VAR 当前财年 = MAX(日期表[财年])
// 筛选当前财年内所有非空白的HC记录
VAR 非空白HC记录 = 
    CALCULATETABLE(
        ADDCOLUMNS(VALUES(日期表[财月]), "@HC值", [期初HC]),
        FILTER(ALL(日期表), 日期表[财年] = 当前财年 && NOT ISBLANK([期初HC]))
    )
// 获取最新的一条非空白记录
VAR 最新非空白记录 = 
    TOPN(1, 非空白HC记录, 日期表[财月序号], DESC)
RETURN
    MAXX(最新非空白记录, [@HC值])

内容的提问来源于stack exchange,提问作者Ashwini B Shetty

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 02:20:11