【日期和时间函数】自定义休息日计算:NETWORKDAYS.INTL函数的使用

返回两个日期之间的所有工作日数,使用参数指示哪些天是周末,以及有多少天是周末。

周末和任何指定为假期的日期不被视为工作日。



语法

NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])

NETWORKDAYS.INTL 函数语法具有以下参数:

■start_date 和 end_date:必需,要计算其差值的日期。start_date 可以早于或晚于 end_date,也可以与它相同。

■weekend:可选,表示介于 start_date 和 end_date 之间但又不包括在所有工作日数中的周末日。 

weekend 是一个用于指定周末日的周末数字或字符串。

weekend 数值表示以下周末日:

image.png
周末字符串值的长度为七个字符,并且字符串中的每个字符表示一周中的一天(从星期一开始)。 
1 表示非工作日,0 表示工作日。 在字符串中仅允许使用字符 1 和 0。 使用 1111111 将始终返回 0。

例如,0000011 结果为星期六和星期日是周末。

■holidays:可选,一组可选的日期,表示要从工作日日历中排除的一个或多个日期。 

holidays应是一个包含相关日期的单元格区域,或者是一个由表示这些日期的序列值构成的数组常量。

holidays中的日期或序列值的顺序可以是任意的。



说明

■如果 start_date 晚于 end_date,则返回值将为负数,数量将是所有工作日的数量。

■如果 start_date 超出当前日期基值的范围, 请 NETWORKDAYS。国际国际回报 #NUM! 。

■如果 end_date 不在当前日期基值的范围内, NETWORKDAYS。国际国际回报 #NUM! 。

■如果周末字符串的长度无效或包含无效的字符, NETWORKDAYS。国际国际回报 #VALUE! 。


在生活和工作中时常会遇到统计员工的在岗天数,便于结算工资。

每个公司制度不同,所以休息时间也不同。

那么如何快速计算非正常周末情况下的员工在岗天数呢?此处涉及NETWORKDAYS.INTL函数。

以此员工时间表为例,此公司为单休制度,即周日为休息日。


微信截图_20190527114322.png

分界线.png

■将光标放在F3处,点击插入函数-日期与时间-NETWORKDAYS.INTL函数。

此时弹出对话框,共四项参数:

“开始日期”是指起始日期;

“终止日期”是指结束日期;

“周末”可填选参数,右表是周末参数的取值以及说明;

“假期”指从工作日历中除去的日期。


NETWORKDAYS.INTL函数计算自定义休息日员工在岗天数1.gif


■在“开始日期”中输入C3,在“终止日期”中输入D3。

因为我们的休息日是星期日一天,参考周末参数取值以及说明,我们在“周末”中输入11。

在“假期”中输入E3:E6。

点击确定,就能得出此员工的在岗天数了。

将光标放在F3处,呈+形下拉填充公式就能得出所有员工的在岗天数了。


NETWORKDAYS.INTL函数计算自定义休息日员工在岗天数2.gif

广东珠海
浏览 765
收藏
点赞
分享
+1
+1
全部评论