在excel 2013中,对于一个小项目,我试图根据开始日期、时间和努力来计算任务的结束日期和时间。
假设:
例如,如果开始日期=29日-12月16日07:00
我使用WorkDay.Intl
函数,使用工作日= 7来计算结束日期。
此外,我还试图根据上一行的结束日期填充下一行的开始日期。如果上一行的结束日期为30-12月16日11:00,下一行的开始日期应与前一行的结束日期相同。但是,如果结束日期是30-12月-16 15:00,那么开始日期应该是31-12月-16 07:00。
有人能帮忙吗?
感谢你的期待。
萨钦
发布于 2016-12-22 10:38:33
我试图找到一种方法来处理这三件边缘案件
(1)上一次结束时间为15:00
(2)新的结束时间正好在15:00,例如从11:00开始工作4小时(effort=0.5)
(3)前一结束时间加上工作的任何一小部分时间溢出到第二天,例如从11:00开始工作6小时(effort=0.75),第二天9:00结束。
我发现使用助手列来存储用例(2)和(3)的小数天数比较容易。
因此,从2016年12月28日D2的15:00和B3的努力开始,在A3、C3和D3中放置以下内容:
=IF(MOD(D2,1)=15/24,WORKDAY.INTL(D2,1,7)+7/24,D2)
=MOD(A3-7/24,1)*3+MOD(B3,1)
=IF(ROUND(MOD(C3,1),6)=0,WORKDAY.INTL(A3,INT(B3)+C3-1,7)+15/24,WORKDAY.INTL(A3,INT(B3)+C3,7)+MOD(C3,1)/3+7/24)
发布于 2016-12-22 06:16:48
以下是我根据你的描述得出的结论:
A1:A3 :开始、努力、结束A2 =第一个开始日期(在本例中为2016年9月12日07:00时),复制到A3中:
=IF(C2<>"No Effort",IF(C2<>"",C2,""),"")
在C2中复制:
=IF(A2<>"",IF(B2<>"",IF(MOD(B2,1)=0,A2+INT(B2),A2+INT(B2)+(MOD(B2,1)*8)/24),"No Effort"),"")
然后,在B2和向下,您放置任何小数点的努力,您需要和结束前一天将是每一天的开始。而每一天的结束将是从努力中增加的日子和时间。
https://stackoverflow.com/questions/41283014
复制