首页 文章

计算excel中两天之间的工作日和时间

提问于
浏览
0

我在下面写了excel公式到 calculate working hours between two dates* (不包括sat和Sunday)* .

如果开始和结束日期在星期一到星期五之间,则效果很好 . 如果两天都包括坐着或星期天那么它会引起错误 .

如果开始日期是星期六或星期日,我会寻求帮助,它应该将下一个工作日作为开始日期,如果结束日期是星期六或星期日,则应该将上一个工作日作为结束日 .


下面是示例和我的工作 . 然后它应该以h:mm格式返回结果


Startdate        :   enddate          :   Working hours(exc sat and sun)
9/28/2013 2:20   :   9/29/2013 2:39   :   Both
9/29/2013 2:39   :   9/29/2013 2:39   :   Both
9/29/2013 2:39   :   9/27/2013 13:18  :   StartDate
9/27/2013 13:18  :   9/29/2013 2:22   :   Enddate
10/1/2013 21:22  :   10/2/2013 0:33   :   3.10
9/30/2013 2:22   :   9/30/2013 5:22   :   3.00

和c2中的公式

=IF(OR(WEEKDAY(A2)=1,WEEKDAY(A2)=7,WEEKDAY(B2)=1,WEEKDAY(B2)=7),IF(AND(OR(WEEKDAY(A2)=1,WEEKDAY(A2)=7),OR(WEEKDAY(B2)=1,WEEKDAY(B2)=7)),"Both",IF(OR(WEEKDAY(A2)=1,WEEKDAY(A2)=7),"StartDate","Enddate")),TEXT(B2-A2-(NETWORKDAYS.INTL(A2,B2,"0000000")-NETWORKDAYS(A2,B2)),"D")*24+TEXT(B2-A2-(NETWORKDAYS.INTL(A2,B2,"0000000")-NETWORKDAYS(A2,B2)),"H.MM"))

如果您需要任何帮助,请告诉我

1 回答

  • 2

    计算两个日期之间的整个工作日,不包括那些日期:

    =MAX(NETWORKDAYS.INTL(A1+1,B1-1),0)
    

    要计算第一个日期的工作时间(剩余到当天结束):

    =IF(WEEKDAY(A1,2)<=5,ROUNDDOWN(A1+1,0)-A1,0)
    

    要计算最后日期的工作时间(剩余到当天结束):

    =IF(WEEKDAY(B1,2)<=5,ROUNDDOWN(B1+1,0)-B1,0)
    

    总结这些,你走了 .

相关问题