怎么用excel计算考勤?如:迟到时间、早退时间、加班时间

上班时间09:00 ,下班时间18:00 , 周末双休,19:00以后算加班(从18:00开始计算加班时间)
怎么用excel计算考勤?如:迟到时间、早退时间、加班时间?

建立辅助列  输入正常上班时间和下班时间

插入一个窗体控件 按钮  输入下方代码

按按钮会自动生成 迟到 早退 和加班的时间  按分钟算的

以后你只需要在A列输入日期 B列输入上班时间 C列输入下班时间

按按钮即可



i = Range("a6000").End(xlUp).Row
i2 = Range("d6000").End(xlUp).Row + 1
For n = i2 To i
If Range("b" & n).Value > Range("i2") Then
Range("d" & n).Value = Round((Range("b" & n).Value - Range("i2").Value) * 24 * 60, 0)
Else
End If
Next


i = Range("a6000").End(xlUp).Row
i2 = Range("e6000").End(xlUp).Row + 1
For n = i2 To i
If Range("c" & n).Value < Range("j2") Then
Range("e" & n).Value = Round((Range("j2").Value - Range("c" & n).Value) * 24 * 60, 0)
Else
End If
Next


i = Range("a6000").End(xlUp).Row
i2 = Range("f6000").End(xlUp).Row + 1
For n = i2 To i
If Range("c" & n).Value > Range("j2") Then
Range("f" & n).Value = Round((Range("c" & n).Value - Range("j2").Value) * 24 * 60, 0)
Else
End If
Next

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-29

D2、E2、F2的公式:

=IF(B2>9/24,B2*24-9,"")

=IF(C2<18/24,18-C2*24,"")

=IF(C2>18/24,C2*24-18,"")

下拉填充。

详见附件。。。

本回答被提问者和网友采纳
第2个回答  2017-07-27
迟到时间:=IF((B2-"9:00")<0,0,B2-"9:00")
早退时间:=IF((C2-"18:00")>0,0,"18:00"-C2)
加班时间:=IF(OR(WEEKDAY(A2,2)=6,WEEKDAY(A2,2)=7),C2-B2,IF((C2-"19:00")<0,0,C2-"19:00"))
不知道是不是你要的效果
第3个回答  2013-09-28
D1=if(B1>9/24,B1-9/24,"")
E1=if(C1<18/24,18/24-C1,"")
F1=if(C1>18/24,C1-18/24,"")追问

不对,算不出来,麻烦解释精确点,谢谢

追答

EXCEL里面1天24小时=1
因此9:00就等于9/24
如果你觉得不精确,那就把DEF列的单元格格式设置一下,设置成hh:mm得到的结果就是迟到、早退、加班多少小时多少分。

相似回答