打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
根据考勤表计算迟到、早退、工时
原创: 卢子 Excel不加班


考勤表五花八门,整理出来的文章并不能适用于所有人。本来对于考勤相关问题,卢子是不参与的,不过既然提到了,就尽可能从各个角度来说明,这样即使不一样,也可以做一个参考。


这是另一种考勤机导出来的考勤记录,现在要根据上班时间,计算出迟到、早退、上午工时和下午工时。


源文件:

https://pan.baidu.com/s/1IrBnUj7BVhQ1V5FzMOzWZA


上班时间为7:30-11:30和13:30-17:30,超过4小时按4小时计算,4小时以内按实际工时计算,周末不上班。


1.迟到

=IF(OR(D2>TIME(7,30,0),F2>TIME(13,30,0)),"迟到","")


时间用TIME函数表示是标准用法,如果你用7:30或者"7:30"这种方法表示,结果会出错。


2.早退

=IF(OR(AND(E2<>"",E2<TIME(11,30,0)),AND(G2<>"",G2<TIME(17,30,0))),"早退","")


早退比迟到麻烦点,因为还要判断单元格不为空才可以执行判断。如果没有这个判断,所有空单元格都会变成早退。


3.上午工时

=IF(D2="","",ROUND((MIN(TIME(11,30,0),E2)-MAX(D2,TIME(7,30,0)))*24,2))


01 周末不上班,也就是没有打卡时间,这个就要加一个IF函数判断,让没有打卡时间的显示空白。


02 MIN(TIME(11,30,0),E2)在计算工时的时候,下班超过11:30的都按11:30计算,11:30之前的按实际时间计算,所以用MIN获取两个时间的最小值。当然这里也可以用IF函数进行判断。

=IF(E2>TIME(11,30,0),TIME(11,30,0),E2)


03 MAX(D2,TIME(7,30,0))在计算工时的时候,上班超过7:30按实际时间计算,7:30之前的按7:30计算。上班打卡跟下班打卡刚好相反,所以用MAX函数获取最大值。当然也可以用IF函数进行判断。

=IF(D2<TIME(7,30,0),TIME(7,30,0),D2)


04 两个时间相减是获得时间


时间要转换成小时,乘以24,在转换的过程中会有很多小时点,所以嵌套ROUND函数保留2位小数点。


4.下午工时

=IF(F2="","",ROUND((MIN(TIME(17,30,0),G2)-MAX(F2,TIME(13,30,0)))*24,2))


计算方法跟上午工时一样,就不做说明。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
真伤脑,这份考勤表整理了2个小时,头痛!
MAX、MIN和IF函数,组合使用效果好
Excel自学教程25课:IF函数制作员工迟到早退考勤表,HR必备技能
excel函数公式:怎么修改新个税计算公式?
最新个税函数来
Excel考勤计算 周末加班天数计算函数详解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服