这个需要用到Excel的if函数:
第一步:用if函数来判断,上班时间是不是在你给的范围:如:7:14分按7点计算 7:15按7点30分计算。
输入公式:=IF(E3<"07:15","07:00","07:30")
这样子呢只要在7:15前打卡的都默认为7:00,然后7:15之后打卡默认为7:30(实际上万一8:00甚至更晚打卡的呢?这个需要根据公司考勤纪律来)
第二步:中午下班时间统一默认为11:00(实际也可能出现拖班,段2里我会讲,这里就不管了):
这样出来的时间,上午的就是整数的4小时。
第三步:同样的方法计算下午上班时间,然后上午加下午的就是总的上班时间:
公式:="11:00"-IF(E4<"07:15","07:00","07:30")+("17:00"-IF(G4<"13:15","13:00","13:30"))
看着可能复杂,但其实不复杂,你觉得复杂可以建辅助列,上午下午单独计算。
第四步:敲黑板哦,重点来了下午会出现拖班,但是你没给拖班的规则,我就假设规则为:满半小时计算,不满半小时不计算,也就是17:29下班也算正常下班,17:59下班只计半个小时,18:00下班计一个小时,18:29下班也是只计一个小时。
有了上述规则,就可以计算加班那一列了:
公式:=FLOOR(F3-"11:00","00:30")的意思就是:按照半个小时取整,我修改了你上午的下班时间,目的是演示给你看,当然你需要根据你公司的规则来修改。
第五步:同样的方法计算下午加班时间:
这里出现错误是因为18:00已经跑到段三了,手动调整一下即可,用公式也可以比如:
=FLOOR(F6-"11:00","00:30")+FLOOR(IF(H6="",I6,H6)-"17:00","00:30")公式中的:IF(H6="",I6,H6)就是判断这里为不为空,为空则返还下一个时间。
这样就搞定了。