- A+
excel作为一款数据处理软件,有非常强大的函数功能,我们在处理数据时经常会用到许多函数公式,比如有的公司给员工制定工作时间表等等,不过像这种表经常会排除员工的周末和节假日时间,那么利用excel该如何进行操作呢?下面小编就给大家讲解下这个问题。
平常有周末双休、有单休、有各种节假日等之分,所以我们需要根据不同的情况使用不同的公式计算。
① 全年无休
全年无休,只要用DATEDIF公式计算出两个日期之间相差几天,即为几个工作日。=DATEDIF(B1,B2,"Y")
如果要去除节假日和周末,DATEDIF是力所不能及了,必须请出NETWORKDAYS函数和NETWORKDAYS.INTL函数。
NETWORKDAYS语法:=NETWORKDAYS(日期1,日期2,[节假日])
② 周六和周日不上班。
公式“=NETWORKDAYS(日期1,日期2)”会自动用“日期2-日期1”,同时去除周六和周日,得到实际工作日天数。
③ 除了周末双休,还有法定节假日也不上班。
我们可以把“清明”、“五一”、“端午”等一系列特色节假日存放在一个表里,然后用公式“=NETWORKDAYS(日期1,日期2,节假日表)”计算扣除了休息日和节假日后的准确工作日天数。
注意,NETWORKDAYS计算出来的天数可能包含“日期1”和“日期2”哦。
另外,遇到单休工作制,或者不是周末休息的公司,那就需要NETWORKDAYS.INTL函数来计算工作日了。
NETWORKDAYS.INTL语法
和NETWORKDAYS类似,NETWORKDAYS.INTL函数多了一个参数“[周末]”,这个参数表示一周7天中哪天休息。
④ 只有周日休息。
由上面的表格,我们知道数字“11”表示“只有周日”休息,所以可以使用公式“=NETWORKDAYS.INTL(日期1,日期2,11,节假日表)”。
⑤ 周六、周日不休息,但一周仍有两天休息时间。
如果是周日和周一休息,可以使用公式:“=NETWORKDAYS.INTL(日期1,日期2,2,节假日表)”。
⑥ 周末不休息,法定节假日休息。
公式:“=NETWORKDAYS.INTL(日期1,日期2,'0000000',节假日表)”。
这是NETWORKDAYS.INTL函数的另外一种写法了,用数字“0”表示上班,数字“1”表示不上班,从周一开始,7个数字就分别表示一周7天哪天休息哪天工作。
以上就是excel日期跳过周末和节假日的方法,可能看着有点复杂,需要实际操作下才能搞清楚,在excel中函数公式类是比较要掌握的,因为许多操作都会用到它。