用到的函数:WORKDAY、COUNTIFS
WORKDAY是计算“经过n天周六日和假期后的日期”,但我们的节假日经常需要补班所以某些周六日是需要作为“工作日”的。
因此利用countifs来计算workday公式计算得出的结果日期中包含多少天补班。
然后进行简单减法(减去多出来的那几天补班),反推出更适合中国宝宝体质的“返回在指定的若干个工作日之前/之后的日期”
注,这种方式有两个小问题:
1、补班后才休假,这种方式计算会错误,如果不多可以单独判断标记出来,进行修改,最为简便;
2、另外,这种办法计算,补班当天是包含在工作日里的
因为发现以上问题,后面加了个VBA方式的,可以解决上面两个问题
(下方列子为:初始日期(A列)经过2个工作日后是哪一天(D列)))
把公式拆解了一下: