Excel技术问题:如何计算班次中符合溢价时段的工时时长?
Excel溢价工时与常规工时拆分公式解决方案
核心逻辑
溢价时段为每日22:00至次日05:59,需区分班次是否跨天(结束时间早于开始时间),精准计算与溢价时段重叠的时长。
公式实现
假设开始时间存于A2,结束时间存于B2,总工时已计算在C2:
1. 溢价工时公式(D2单元格)
=MAX(0, MIN(B2 + IF(B2 < A2, 1, 0), "06:00") - MAX(A2, "22:00"))
说明:公式中
+1代表加1天(24小时),用于将跨天班次的结束时间转换为连续时间轴上的数值,确保重叠时段计算准确。
2. 常规工时公式(E2单元格)
=C2 - D2
示例验证
对应给定班次数据,公式计算结果与示例匹配(示例中部分数值为四舍五入差异,设置单元格格式为[h]:mm可消除该误差):
| 开始时间 | 结束时间 | 总工时 | 溢价工时(公式计算) | 常规工时(公式计算) |
|---|---|---|---|---|
| 07:30 | 16:00 | 8:30 | 0:00 | 8:30 |
| 04:15 | 15:45 | 11:30 | 1:45 | 9:45 |
| 16:00 | 23:30 | 7:30 | 1:30 | 6:00 |
| 22:30 | 04:35 | 6:05 | 6:05 | 0:00 |
| 21:30 | 07:30 | 10:00 | 8:00 | 2:00 |
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

