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

PowerBI中按多周期计算可用时长及利用率的技术咨询

PowerBI员工利用率计算解决方案

核心思路

基于筛选上下文(日/周/月/季/年),先计算员工在该周期内的实际总工时,判断全职/兼职身份后,结合周期内工作日总数算出总可用时长,最终用实际工时除以可用时长得到利用率。

所需前提

确保已建立包含IsWorkDay(标记是否为工作日,5天工作制即周一至周五设为True)列的日历表(命名为Calendar),且日历表与MATCHED_JOBID表通过Actual_Start字段建立关系。

分步实现度量值

1. 实际工作时长(分钟)

计算筛选范围内有效工作记录的总分钟数:

实际工作时长_分钟 = 
SUMX(
    FILTER(
        MATCHED_JOBID,
        MATCHED_JOBID[ACTUAL_END] > MATCHED_JOBID[ACTUAL_START]
    ),
    DATEDIFF(
        MATCHED_JOBID[ACTUAL_START],
        MATCHED_JOBID[ACTUAL_END],
        MINUTE
    )
)

2. 实际工作时长(小时)

将分钟转换为小时,用于判断全职/兼职阈值:

实际工作时长_小时 = 
DIVIDE([实际工作时长_分钟], 60, 0)

3. 周期内工作日数

计算当前筛选上下文内的工作日总数:

周期工作日数 = 
CALCULATE(
    COUNTROWS(Calendar),
    Calendar[IsWorkDay] = TRUE()
)

4. 每日可用时长(小时)

根据周期内实际总工时判断每日可用时长:

每日可用时长_小时 = 
IF(
    [实际工作时长_小时] > 30,
    8, // 全职每日8小时
    6  // 兼职每日6小时
)

5. 总可用时长(分钟)

结合工作日数和每日时长,计算周期总可用分钟数:

总可用时长_分钟 = 
[周期工作日数] * [每日可用时长_小时] * 60

6. 最终利用率

计算实际工时与可用时长的占比,自动处理除数为0的情况:

利用率 = 
DIVIDE(
    [实际工作时长_分钟],
    [总可用时长_分钟],
    0 // 可用时长为0时返回0
)

效果验证

  • 日维度:若当日实际工时超30小时(逻辑兼容极端场景),可用时长为480分钟;否则为360分钟。
  • 周维度:若周总工时>30小时,可用时长为2400分钟(40小时);否则为1800分钟(30小时),完全匹配需求。
  • 月/季/年维度:自动计算对应周期内工作日数,乘以对应每日时长得到总可用时长,再计算利用率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 04:35:28