求大神,EXCEL时间差计算公式,排除掉下班休息时间和周末时间!!!在线急等!!!

求助图中如何求工作日时间差,举例来说开始时间为13年1月16日18:00:00,结束时间为13年1月17日10:00:00,则正确答案应为时差1小时,求大神,在线急等!

第1个回答  2014-05-24
你这“时差1小时”,如何计算来的???把问题作为内容(邮件主题一定要包含“excel”,本人以此为依据辨别非垃圾邮件,以免误删)、excel样表文件(把现状和目标效果表示出来)作为附件发来看下 [email protected]追问

已发,无论成功与否先谢谢了

第2个回答  2014-05-24
13年1月16日18:00:00
13年1月17日10:00:00

这个怎么算的? 怎么得出1小时来的?追问

下午六点下班,早上九点上班,所以仅看工作时间只有1小时

追答

中午的休息时间要去掉不?

追问

可以不用去掉,不影响误差,无论能否成功,感谢您这样热心的网友了!!谢谢!

追答Public Function WorkTimeDiff(Startime As Date, Endtime As Date) As Long
 
On Error GoTo Err:
 
Dim i As Long
 Dim Temptime    As Date
 Dim Temps As Long
 Dim TimeV As Double
 
Temps = DateDiff("n", Startime, Endtime)
 
For i = 1 To Temps
 
Temptime = DateAdd("n", i, Startime)
 
Select Case Format(Temptime, "w")
 Case 2, 3, 4, 5, 6
 
    TimeV = (CDbl(Temptime) - Fix(CDbl(Temptime))) * 48
     
    If (TimeV >= 18 And TimeV <= 24) Or (TimeV >= 26 And TimeV <= 36) Then
     
    WorkTimeDiff = WorkTimeDiff + 1
     End If
     
End Select
 
Next
 
Err:
     Exit Function
 End Function

追问

兄弟……先谢谢了,但是我不会编程,真心看不懂……没有公式可以解决吗?

追答

公式太复杂,

按ALT+F11,打开VBA,然后插入模块,复制上面的代码进去,保存,退出VBA
表格中输入公式:
=WorkTimeDiff(A1,B1)-1

公式的结果是多少分钟

本回答被提问者采纳
第3个回答  2014-05-24
要算差多少多少小时多少分么追问

是的,精确到分即可,谢谢

追答

公式=time(hour(结束时间)-hour(开始时间),minute(结束时间)-minute(开始时间)),括号里的引数你懂的哈

第4个回答  2014-05-24
能这求吗?我没见过。
相似回答