利用Excel快速处理汇总刷卡考勤数据(之一)范文

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

利用Excel快速处理汇总刷卡考勤数据(之一)

马上又要月底了,又要面临着把从刷卡机里导出的12月的考勤数据进行统计汇总。我们总不能还是花几天时间来手工处理这些考勤数据吧?前天晚上给HR们上课,正好介绍到考勤数据统计分析的一个例子,现在拿出来跟大家分享。

实际数据如下图所示,从打卡机导出的数据是一个流水,要求:

1、找出每个人最早打卡时间和最晚打卡时间;

2、判断每个人每天的迟到、早退情况、加班情况。

说明:出勤时间标准是8:00-17:30,18点以后为加班时间。

这个表格数据的特点是:每个人的刷卡数据有好几个,分成了几行保存,而且刷卡日期和时间是保存在一个单元格,因此我们首先要把刷卡日期和时间分开,这个工作可使用“分列”工具栏完成,处理结果如下:

剩下的问题,就是要解决本文前面提出的问题了。这些问题的解决,有很多方法,其中一个最容易掌握、也最简单的方法,是利用简单的几个函数IF、COUNTIFS、INDEX函数进行处理。下面进行具体说明。

在右侧插入一个辅助列,标题为“第几次刷卡”,在单元格F2输入公

式 =COUNTIFS($B$2:B2,B2,$D$2:D2,D2),往下复制,就可以统计E列的某个刷卡时间是某人某天的第几次刷卡了。

再插入两个辅助列,标题分别为“最早刷卡”和“最晚刷卡”。

在单元格G2输入公式 =IF(F2=1,E2,"") ,往下复制,即可得到某个人在某天的最早刷卡时间。

在单元格H2输入公式 =IF(G2<>"",INDEX(E2:E875,COUNTIFS(B:B,B2,D:D,D2)),""),往下复制,即可得到某个人在某天的最晚刷卡时间。

这三个公式的思路、逻辑和原理,这里就不再细说了。

这样,就得到了如下的处理结果。

将F列至H列的公式,采用选择性粘贴的方法转换为数值,然后筛选出所有空值单元格,予以删除,并删除E列和F列,就得到下面的每个人的刷卡考勤数据,以此数据来做考勤计算:

在此表格的右侧进行迟到、早退、加班的计算,数字1表示迟到或早退,具体的时间表示加班时间,如下表:

其中,各单元格的公式分别如下:

单元格G2:=IF(E2>8/24,1,"")

单元格H2:=IF(F2<17.5/24,1,"")

单元格I2:=IF(F2>18/24,F2-18/24,"")

最后再对这个数据表进行透视汇总分析,就得到每个人这个月的迟到、早退、加班汇总数据,如下:

大家看到了吧,考勤数据的处理并不复杂,也不难,只要掌握了Excel的几个实用技能(分列工具、常用函数、透视表),就可以在几分钟把看起来繁琐无比的考勤数据进行高效快速处理和统计汇总。有关Excel数据处理和分析的问题,欢迎大家加入我创建的千人Excel交流学习群(群号),随时跟大家交流实际工作中的问题,分享最新案例模版,了解最新学习动态,学习最新Excel技能。

上面介绍的仅仅是一种考勤机数据格式,实际中,每家企业的考勤机都不一样,数据格式也缤纷异彩,这就需要根据具体的情况进行具体分析,找出最佳的解决方案。后面的总结文章中,我将再陆续介绍几个常见的考勤数据例子及其解决方案。

【作者简介】

韩小良,国内著名资深实战型Excel培训讲师和应用解决方案专家。Excel应用方面的著作第一人,出版了近40部关于Excel企业管理应用方面的实用书籍。从事Excel研究及应用多年,对Excel及VBA在企业管理中的应用有着较深的研究和独特的认识,对Excel及VBA在企业管理中的高级应用培训有着丰富的实战经验,已经为数千家大中型企业进行了Excel培训和应用方案解决咨询服务,在业界享有很高的评价,深得客户认可。主要著作:《构建高效数据分析模版——Excel函数和动态图表高级应用》,《Excel高效财务管理和分析模版应用大全》,《Excel 会计与财务高效应用从入门到精通》等等。

相关文档
最新文档