考勤数据的处理
一、考勤数据的规范化处理
1、 分列
多数考勤机导出的数据都要经过分列处理,这样才能保证时间等内容的可使用性,所以此功能一定要掌握,同时这也是将日期和考勤时间分开的重要方式之一。
2、 排序
为了方便处理,我们在数据导出后,多数是按姓名、日期的情况排列,这对于数据后续处理是有帮助的,如果未按照此情况排列,个人建议手动调整为此顺序
3、 函数提取
除了手动分列外,也可以用函数提取其日期和工作时间,然后将此做为动态的数据处理,减少手动的工作量(因本人较懒,所以数据处理将采用“制作一次,多次使用”的理念进行,后续内容将以此方法为例)
二、考勤结果的规范化输出
1、 与输出格式对接
下图为导出考勤数据
1) 假设一天两次打卡
上图的输出格式则定为:
备注:日期采用DATE(YEAR(D2),MONTH(D2),DAY(D2))
时间采用TIME(HOUR(D2),MINUTE(D2),SECOND(D2))
打卡次数用COUNTIFS(B2:$B$100,B2,E2:$E$100,E2) 打卡次数是为了统计最后一次打卡的时间
处理结果为:
上述图用if and countifs offset将第一次打卡时间和最后一次打卡时间计算出来,同时也可以将一天内仅打了一次卡的情况有效筛选
另:如果数据处理好后,采用透视表,则输出内容更为方便,不过在一天只打一次卡的时候,会出现第一次打卡和最后一次打卡数据一样的情况(如下图),这样就需要手动修正原始数据对表格根据上述的思路,修正为最早和最晚打卡时间,这样就避免重复,然后再用透视表(敝人才穷,暂无其他优秀更新方法)
2、 一天三、四或多打卡情况
上述思路的拓展处理,同样适用一天多打卡,只不过建议在上述表上进行拓展,标识出早晨、中午、晚上打卡次数的统计,统计方法可以用if and countifs offset函数,做出一天四打卡的情况
三、辅助列和辅助表
上述所涉及的内容中,有打卡次数统计,后续还会加入迟到、早退统计,诸如此类表格是为了达到结果而设计的辅助列。所以有些时候不要担心建立太多的辅助列,只要能得到结果,那就是合理的
另:上述日期和时间的辅助列,有效得减少手动分列带来的失误,同时不破坏原始的数据。
4楼 西风画扇03
公司要求一天打4次卡,还分两个班次。请问这种情况有什么好的方法吗?
鸿影V2
@西风画扇03:一天打4次。。。。感觉光记着要打卡了
3楼 wo紫玲
一天打好几次的根本没法提取,我刚试过了,课程中所说的是一天只打了两次的考勤记录才有用
2楼 茹意957747818
一天打3、4次卡的呢
1楼 皓晨曦
打卡次数是为了统计最后一次打卡的时间?这里是怎么运用?
如何运用这个打卡次数,找出同一人同一天,最早和最迟的打卡时间?求指教!