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

Power BI矩阵添加周平均值列:DAX公式实现求助

实现Power BI矩阵周平均值列的DAX方案

核心DAX度量值

直接创建以下度量值来计算周平均值:

Assembly Weekly Avg Cases Per/Hr = 
VAR CurrentWeek = SELECTEDVALUE(Query1[Corp_Wk_Num])
RETURN
CALCULATE(
    AVERAGEX(
        VALUES(Query1[Weekday 3]),
        [Assembly Actual Cases Per/Hr]
    ),
    ALLSELECTED(Query1[Weekday 3]),
    Query1[Corp_Wk_Num] = CurrentWeek
)

公式说明

  • CurrentWeek变量:锁定矩阵当前行对应的周数,确保计算范围不跨周。
  • AVERAGEX函数:遍历当前周的所有工作日,对每个工作日的Assembly Actual Cases Per/Hr值取平均,自动忽略原度量值返回的空白(即实际工时为0的情况)。
  • ALLSELECTED(Query1[Weekday 3]):清除矩阵中“工作日”列的筛选上下文,让计算覆盖当前周的所有工作日,而非仅当前单元格的单个工作日。
  • Query1[Corp_Wk_Num] = CurrentWeek:严格限定计算范围为当前选中的周,避免跨周聚合。

矩阵配置步骤

  1. 将Corp_Wk_Num拖至矩阵行区域,Weekday 3拖至列区域。
  2. 将原度量值Assembly Actual Cases Per/Hr和新创建的Assembly Weekly Avg Cases Per/Hr拖至值区域。
  3. 调整值区域的列顺序,即可得到目标效果。

可选优化

若只需计算工作日(周一至周五)的周平均,可修改CALCULATE的筛选条件:

Assembly Weekly Workday Avg Cases Per/Hr = 
VAR CurrentWeek = SELECTEDVALUE(Query1[Corp_Wk_Num])
RETURN
CALCULATE(
    AVERAGEX(
        VALUES(Query1[Weekday 3]),
        [Assembly Actual Cases Per/Hr]
    ),
    ALLSELECTED(Query1[Weekday 3]),
    Query1[Corp_Wk_Num] = CurrentWeek,
    Query1[Weekday 3] IN {"Monday","Tuesday","Wednesday","Thursday","Friday"}
)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 22:42:49