统计员工考勤情况,是每个HR必会碰到的问题 。如下表中:
文章插图
根据左边的<缺勤登记表>统计出不同月份缺勤人数,具体要求:
同一个人在同月份里只算一次(不考虑重名情况),比如1月份里共有3人缺勤,分别为王五,李四,张三 。
视频解
【excel缺勤人表排除重复项,怎么办?】关键操作
在E3单元格输入公式:
=SUMPRODUCT((MONTH($A$3:$A$30)=D3)*(MATCH((MONTH($A$3:$A$30)=D3)&$B$3:$B$30,(MONTH($A$3:$A$30)=D3)&$B$3:$B$30,0)=ROW($3:$30)-2)),可算出1月缺勤人数 。(公式有点长,这几行都是同一个公式!)
公式分解:
分解一:
每月缺勤表中D3:D14区域中的1月——12月单元格,设置为“通过格式“月”“份””,这样就可以直接输入数据,但显示为某某月份,而实际单元格内容又是数值,不影响后同的计算:
(可参考:EXCEL|一键添加“能计算”的数量单位)
文章插图
分解二:
“MONTH($A$3:$A$30=D3)&$B$3:$B$30”
返回一组值:{TRUE王五;TRUE李四;TRUE王五;TRUE张三;TRUE李四;FALSE李四;FALSE甲一;FALSE李四;FALSE开心;FALSE李四;FALSE张三;FALSE张三;FALSE李五;FALSE王五;FALSE开心;FALSE王五;FALSE李四;FALSE开心;FALSE李四;FALSE甲一;FALSE李四;FALSE开心;FALSE李四;FALSE张三;FALSE开心;FALSE李四;FALSE张三;FALSE张三};
分解三:
“MATCH(MONTH($A$3:$A$30=D3)&$B$3:$B$30,MONTH($A$3:$A$30=D3)&$B$3:$B$30,0)=ROW($3:$39)-2”,含义在“分解二”中蓝色字体的数组中匹配出每一数值的位次,与当前实际位次是否相等,返回一组值逻辑值:{TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
分解四:
“(MONTH($A$3:$A$30)=D3”,返回一组逻辑值:{TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
总:
SOMPRODUCT函数,对“分解三”“分解四”红色字体两数逻辑值对应位置数据乘积加和,得到1月份缺勤人数 。
(注:视频中每一分解函数返回值是单独分解的情况下的显示值,文字中的是“公式求值”中的显示值 。)
最终:
文章插图
推荐阅读
- excel累进提成怎么解决
- excel一串串长短不一的文本算式,怎么算结果?
- excel怎么利用OFFSET函数定义名称
- excel怎么计算平均值?
- excel怎么提取无规律分布的汉字、数字、字母
- SUMIF+CELL使隐藏列不参与汇总
- excel身份证号码统计易出现的错误
- 数据有效性 利用excel数据验证规范数据输入
- Excel公式返回#DIV/0!错误值原因及解决方法
- 避免Excel公式中常见错误的方法和技巧