各位专家,
我需要帮助根据安排的工作时间制定以下 4 天工作和 4 天休息的示例。我可以连续几天这样做。请参阅下面的详细信息。
使用的公式
在单元格 G9==IF(E9="","",IF(I9=0,F9+I9, IF(AND($I9<>$I8,$I9-$I8>1,$J9>0),($F9+($E9/8)), IF(AND($I9<>$I8,J9>0),$F9+1, IF(AND($I9<>$I8,$I9-$I8>1,$J9=0),($F9+($E9/8)-1), IF(AND($I9<>$I8,J9=0),$F9, IF(AND($I9=$I8,J9>0),$F9, IF(AND($I10<>$I9,J9>0),(F9+I9)-1,$F9))))))))
在单元格 F10==IF(AND($H10<>$H9,$J9=0),$G9+1,$G9)
辅助列 H、I 和 J 包含以下公式
在单元格 H9= 中,=IF(E9="","",SUM(H8,E9))
它是运行总和
在单元格 I9 中 ==IF(H9="","",QUOTIENT(H9,8))
在单元格 J9 中 ==IF(H9="","",MOD(H9,8))
我想根据每天的工作时间来计算日期。工作 8 小时算作 1 天,安排 4 个工作日后,下一个安排日期将在 4 个休息日后分配。
我正在寻找调度期间的公式,如果完成 4 天(32 小时),则下一个调度日期应该是 4 个休息日之后。请参阅以下所需的输出。
手动输入开始日期和每日工作时间。
请看一下。
提前致谢。
答案1
我很少在 Excel 中进行日期时间数学运算,所以这对我来说是一次学习经历。
我认为最简单的方法是添加一个计数器列,用于跟踪该人“在线”了多少小时,然后您可以使用它来表示从图像中的 C2 开始的“结束”:
=B2+QUOTIENT(HOUR(B2)+A2-1,8)+QUOTIENT(HOUR(B2)+A2-1,32)*4+TIME(A2,0,0)-TIME(8*QUOTIENT(HOUR(B2)+A2-1,8),0,0)
这是开始,从图像中的单元格 B3 开始:
=IF(HOUR(C2)<8,C2,C2+1-TIME(8,0,0))+IF(D2>D3,4,0)
我发现使用自定义格式字符串作为开始很有用:
[$-en-US]m/d/yy - h" hours worked so far"
结束语:
[$-en-US]m/d/yy - h" hours worked"
您可以更改这些格式字符串以适合您的语言环境。
计数器列的公式如下:
=IF(D2+A3>32,D2+A3-32,D2+A3)
除了第 2 行以外,它很简单:
=A2
“结束”计算之所以复杂,是为了允许任意数量的小时。每 8 小时后,天数必须增加 1,并且QUOTIENT(HOUR(B2)+A2-1,8)
。此外,每 32 小时后,天数必须增加 4,并且QUOTIENT(HOUR(B2)+A2-1,32)*4
。