2021年我要上多少天班?Excel一秒告诉你!

扣除双休日这个月上几天班?如果单休呢?如果我是每周二休息呢?如果还有年假呢?这些问题使用Excel即可轻松搞定,不用再一个一个计算了!

案例01 | 指定日期范围工作天数

如果我问你从1月1日到今天,你一个上了多少天班?你可能要计算一会儿,或者去翻日历去了!但是使用Excel中NETWORKDAYS函数,非常轻松

=NETWORKDAYS(A2,B2)

NETWORKDAYS函数默认周六周日为休息日,所以工作日是扣除后的!不过他还有第三参数,我们可以自己指定节假日!

上面的结果,我们可以通过其他函数计算来验证,感兴趣的可以看一下,觉得复杂的跳过!

=DATEDIF(A2,B2,"d")+1-SUMPRODUCT(N(WEEKDAY(ROW(INDIRECT(A2&":"&B2)),2)>5))

案例02 | 期间请假,如果计算工作天数

如果期间请假,那么实际工作天数改如何计算,请假如果正好和双休日重叠会不会重复计算?

=NETWORKDAYS(A2,B2,C2:C4)

结果我们上次制作的日历,可以发现1月31天,双休10天,请假3天,但是其中有一天是周日,所以31-10-2=19天,没有重复计算!

非常的好用,但是有的时候,部分公司并不是固定的双休,有固定周一休,有的固定周二休要怎么处理呢?或者周一和周四等情况要怎么处理呢?

这里就要介绍他的兄弟函数 NETWORKDAYS.INTL

案例03 | 自定义休息日

这里的12表示周一是休息日,你肯定要问,为什么是12?

=NETWORKDAYS.INTL(A2,B2,12)

这个表,应该可以解决你的疑问!根据实际需要选择!

但是看完,你可能还有有疑问,如果我的休息日不是这里的组合怎么办?不用担心,除了上面的固定写法,我们还可以使用7位0和1来表示周一到周日是否休息,1 表示非工作日,0 表示工作日,所以上面还可以这样来写!

=NETWORKDAYS.INTL(A2,B2,"1000000")

那如果我是周一和周四休息呢?

=NETWORKDAYS.INTL(A2,B2,"1001000")

休息日用1表示,工作日用0表示,非常的简单!

有了上面的基础,我们来看一个实际案例!

案例04 | 2021全年干活几天?每个月呢?

=NETWORKDAYS(E2,EOMONTH(E2,0),$B$2:$B$32)

上面应该不用我做过多解释了,第三参数指定休假日,自己指定!

(0)

相关推荐