返回两个日期之间的所有工作日数,使用参数指示哪些天是周末,以及有多少天是周末。周末和任何指定为假期的日期不被视为工作日。

语法

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函数。

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

方法/步骤

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

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

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

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

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

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

dca28da97f1abd018d912e9436532845.gif

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

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

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

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

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

e3c51b1bc8d2a0bd6698b83961b35194.gif

原文链接:https://bbs.wps.cn/topic/26512