美文网首页精进ExcelExcel实战-表格公式Excel 加油站
Excel实战:根据打卡时间,计算餐补(补贴)

Excel实战:根据打卡时间,计算餐补(补贴)

作者: 简单快捷 | 来源:发表于2020-03-15 18:36 被阅读0次

    餐补计算

    本篇适配:小白慎点。主要是思路分享。

    上图餐补计算方式,一般有两种:

    ①根据打卡时间,计算实际餐补数据;

    ②根据排班数据,匹配理论餐补数据。

    实际工作中,需综合比对两种数据,最后修正得到结果。


    壹·思路分析

    1. 严谨思路探讨

    根据排班匹配餐补,可以用vlookup函数匹配。(需要处理一下数据***。)

    根据打卡计算餐补,比较复杂。难点在于班次的判断。这里首先想到两种判断思路:

    思路a

    一种思路是,拿上班点、下班点与班次比对,正常情况下,取班点最接近的班次。可能用到绝对值函数ABS。

    思路b

    另一种思路如上图,计算班点重合区域,取重合区域最大的班次。本思路更为严谨、合理,计算公式:

    MIN(B,b)-MAX(A,a)

    然而,实际写公式时,我发现该思路下,公式特别复杂,特别长,不利于理解阅读。也就不利于后期维护,需尽量避免。

    2. 有没有简单的思路?

    我们先只考虑单个班次情况,比如夜班23:00-08:00。要怎样才能准确判断:这个打卡时间,是不是夜班?

    最简单的方法,看下班时间,只要下班点在早上,基本就是夜班了。当然这并不准确,也有可能是晚班忘记打卡,次日补上。要进一步确定,还需看上班点,在深夜就妥了。这也是我们人脑的判断思路。

    综上,有:上下班点→班次。

    这里,我采用了一个取巧思路:截取上班点两位数,连接下班点两位数,组成一个班点4位数,如上图中的红色1300。然后考虑正常的迟到早退现象,排列组合每一个班次的班点4位数。

    比对班点4位数,即可匹配出班次。有点像穷举法。


    貳·公式设置

    C8公式:

    =LEFT(C3,2)&MID(C3,9,2),向右向下填充。

    注:MID参数9,因有2个空格+1个换行符。

    C13公式:

    =IFS(C3="","没有打卡",LEN(C3)=7,"忘记打卡",1,"OK"),向右向下填充。

    注:首先剔除无打卡、忘打卡的情况。

    C3数组公式:

    =B3:B5&C2:E2,三键结束输入,向右向下填充。

    注:快速排列组合出每个班次的班点4位数。考虑到晚班1、2餐补相同,可将二者组合放在一起,即图中F列(删重)。

    C18数组公式:

    =OR(C8=排列组合!$F$1:$F$14)*10,三键结束输入,向右向下填充。

    注:与F列比对,若相等,则判断班次为晚班(若无特殊说明,晚班=晚班1或晚班2,下同),最后输出结果:试用期的晚班餐补。

    C23数组公式:

    =OR(C8=排列组合!$C$15:$E$17)*20,三键结束输入,向右向下填充。

    注:判断夜班,输出试用期夜班餐补。

    C28公式:

    =IF(LEN(C13)=4,C13,MAX(C18,C23)),向右向下填充。

    注:合并打卡判断,晚班1、2判断(试用)和夜班判断(试用)。

    B33公式:

    =VLOOKUP(--A33,必要数据!$B$17:$C$18,2,0),向右向下填充。

    注:两个负号"- -",将工号转换为数值,避免匹配格式问题。

    C33公式:

    =IFS(NOT(ISNUMBER(C28)),C28,C28=0,0,$B33="试用",C28,($B33="正式")*(C28=10),C28+15,($B33="正式")*(C28=20),C28+25),向右向下填充。

    注:公式虽长,却也简单。核心思路是,"正式"且"10"的+15,"正式"且"20"的+25,其余不变。


    叁·匹配公式

    C40公式:

    =IFERROR(VLOOKUP($B38&C38,必要数据!$A$21:$B$26,2,0),0),向右向下填充。

    注:巧用符号&,将多条件匹配转换为单条件匹配。

    注:数据处理***,将二维数据,转换为一维,以便匹配。


    肆·总结

    班次匹配思路:

    将上下班时间简化为班点4位数,然后穷举各班次的班点4位数;通过班点4位数,可较快较准的匹配班次。

    排列组合时,有可能不同班次,会有相同的班点4位数,需特别注意,设置优先级。

    该思路餐补,应与排班计算餐补对比,以便处理少数特殊情况。

    思路仅供参考,公众号回复"餐补",可获取本文。


    作者:闲钓宇哥

    相关文章

      网友评论

        本文标题:Excel实战:根据打卡时间,计算餐补(补贴)

        本文链接:https://www.haomeiwen.com/subject/uznpehtx.html