打卡记录转换成考勤表-考勤表,才是真正检验Excel水平的试金石_80楼网赚论坛|80楼网创
考勤表是目前Excel一大难题,难住一大堆高手。 难在哪?难在于没有统一标准! 每个公司所用的考勤软件又不一样,导出来的数据各种各样都有,不仅如此,每个公司的计算方法也不一样。 很多高手,遇到考勤表都直接绕过,太花费时间。 学员的问题,要统计正常天数、加班天数、合计。加班天数的计算标准,只要当天有22:00打卡的算半天。 这家工厂打卡记录转换成考勤表,对于一线员工还算可以,不需要考虑迟到早退这些,这样一来问题难度就降低了不少。 1.正常天数 只需判断非空单元格的次数,即可解决。 =COUNTA(B2:AF2) 2.加班天数 提取每个单元格最后的时间跟22:00比较,时间表面看是最后5位。可惜,提取后发现少1位。 =RIGHT(AE2,5) 明明是5位,怎么提取出来时间不对,这只能证明里面含有隐藏字符打卡记录转换成考勤表,所以要提取6位。 =RIGHT(AE2,6) 最后1位隐藏字符是什么呢?卢子放弃了猜测,再用提取左边5位的方法,这样就得到时间。 =LEFT(RIGHT(AE2,6),5) 用文本函数提取出来的时间是文本格式,不能直接比较,需要转换成数值格式,前面加–转换即可。按照目前思路,嵌套SUMPRODUCT函数应该可以解决,可万万没想到,公式往下拉又出错了。 财务工作中,你是否遇到焦头烂额不知如何解决的问题呢? (此处已添加小程序,请到今日头条客户端查看) 22/24就是代表22:00,因为一天24小时,也可以用TIME(22,0,0)。 =SUMPRODUCT(–(–LEFT(RIGHT(B2:AF2,6),5)>=22/24))/2 卢子找了一个没有打卡记录的单元格测试,发现问题就出在这里。 有错误值,再嵌套一个IFERROR函数,让错误值显示0,这个是数组公式,输入公式后按Ctrl+Shift+Enter三键结束。 =SUM(–(IFERROR(–LEFT(RIGHT(B3:AF3,6),5)>=22/24,0)))/2 经过了反复测试,终于可以了,真不容易。 3.合计 两个天数相加即可。 =AH3+AI3 这种数据还不是最垃圾,比这个更垃圾的还有,真的吐血的心都有。留着改天心情好再说。 ———END———限 时 特 惠:本站每日持续更新海量各大内部创业教程,一年会员只需88元,全站资源免费下载点击查看详情站 长 微 信:chuangyedemao