点击上方蓝字关注 Excel函数与公式
置顶公众号或设为星标,否则可能收不到文章
进入公众号发送函数名称或关键词,即可免费获取对应教程
个人微信号 | (ID:LiRuiExcel520)
微信服务号 | 跟李锐学Excel(ID:LiRuiExcel)
微信公众号 | Excel函数与公式(ID:ExcelLiRui)
进入公众号发送函数名称或关键词,即可免费获取对应教程
VLOOKUP丨COUNTIF丨lookup丨sumif丨sumproduct
(诸如此类的更多关键词已整理完毕,进公众号发送即可)
仅5分钟,将数千条打卡记录做成考勤统计表
工作中经常会遇到从几千条记录中提取统计结果报表的需求,如果不掌握点化繁为简的技术,哭都来不及了!
就拿很多企业都有的员工打卡记录来说吧,每个员工会在不同时段打卡,有的人还经常多次重复打卡,你既要按照时段区分出哪些是上班卡,哪些是下班卡,还要进行多次打卡的排重处理,怎么办才能兼顾所有要求搞定问题呢?
看完本教程,你就能多掌握一个化腐朽为神奇的大招。
更多Excel函数的系统提升,本文后面会给出技术知识点大纲。
看完教程还想进一步系统学习的同学,长按下图,识别二维码参加Excel特训营。
更多不同内容、不同方向的Excel视频课程
长按识别二维码↓获取
(长按识别二维码)
一、数千条打卡记录数据源及结果展示
咱们先来看一下6月份的数据源,包含各个员工在每天的多次打卡记录。
每人每天打卡次数不固定,有可能一个时段内多次打卡,也可能某个时段缺卡没有打卡记录,见下图所示。
将上述数千条打卡记录按本文教程所授方法处理,仅需5分钟,即可得到所有员工当月的考勤统计表,如下图所示。
二、业务目的及思路构建
处理任何问题,动手之前先构建思路,然后选择最合适的方法,最后才是动手落地执行。
拿这个案例来说,至少分为三步处理:
1、将零散的打卡记录按企业规定,归属到对应的打卡区间,标识出早上打卡、中午打卡、晚上打卡;
2、将整月各员工每天的打卡标识合并同类项,双条件分类汇总统计,一个条件是按打卡区间分类汇总、一个条件是按天分类汇总;
3、将上述中间结果处理为想要的统计结果,比如每天有打卡记录的位置用√标识,缺卡处留空白等。
思路捋顺之后,再选择最合适的方法按思路步步拆解,用到的技术包含函数公式、数据透视表等,具体见下文步骤说明。
三、将打卡时间自动归类到打卡时段
由于数据源中C列的打卡时间很零散,首先要根据企业规定归类。
企业打卡规定如下:
1、一天分为3个打卡区间分别打卡
2、打卡区间划分如下:
(1)早9:30前:早上打卡
(2)午12:00至13:30:中午打卡
(3)晚16:30后:晚上打卡
3、其余时间段打卡无效。
在D列添加辅助列,输入下列公式。
=IF(C2<=VALUE("09:30"),"早上打卡",IF(AND(C2>=VALUE("12:00"),C2<=VALUE("13:30")),"中午打卡",IF(C2>=VALUE("16:30"),"晚上打卡","")))
这样就可以把C列的打卡时间自动归类,对应到早上打卡、中午打卡、晚上打卡,没在指定打卡时段的无效打卡就返回空。如下图所示。
将数据源规范整理好以后,继续下一步,将数据按需求分类汇总统计。
四、多条件合并同类项及分类汇总统计
在规范打卡记录数据源的基础上使用数据透视表批量分类汇总。
透视表布局如下所示。
筛选有效打卡区间,设置日期自定义格式为d,将2019/6/1显示为1,取消姓名分类汇总行,效果如下所示。
这时每个员工在每天的各时段打卡次数已经统计出来了,还需要进一步转换显示效果。
五、报表显示效果转换及美化方法
在数据透视表中设置数字格式,自定义格式代码如下所示。
[>=1]√;G/通用格式
转换后,数据透视表效果如下所示。