可以使用函数嵌套实现。
1、实现效果
休假类别改为了“单天请假”、“2-3天”、“4-5天”和“5天以上”,如果不习惯可以在公式内自行修改。
2、示例公式
=LOOKUP(TEXT(MIN(IF(MMULT(TRANSPOSE(ROW($F$2:$F$18)),--((F2+COLUMN(A:E))=IF(D2=$D$2:$D$18,$F$2:$F$18))),"X",F2+COLUMN(A:E))),"0;;"&F2+6)-TEXT(MAX(IF(MMULT(TRANSPOSE(ROW($F$2:$F$18)),--((F2-COLUMN(A:E))=IF(D2=$D$2:$D$18,$F$2:$F$18))),,F2-COLUMN(A:E))),"0;;"&F2-6)-1,{1,"单天请假";2,"2-3天";4,"4-5天";6,"5天以上"})
*数组公式,需要三键结束输入(CTRL+SHIFT+ENTER)。
3、公式简析
①以目标日期为基准,向上、向下分别生成连续5天的日期。
②将目标员工实际请假的日期去除掉。
③中间空缺日期的数量就是连续请假的天数。
④根据空缺日期的数量,返回对应的请假类型。
以H6单元格为例进行演示:
另外还可以看到,H3单元格在计算过程中,中间只空缺了1个日期,所以最后返回了“单天请假
温馨提示:答案为网友推荐,仅供参考