Applies ToMicrosoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 网页版 Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016 Excel 2013 Excel Web App

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

语法

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 数值表示以下周末日:

周末数

周末日

1 或省略

星期六、星期日

2

星期日、星期一

3

星期一、星期二

4

星期二、星期三

5

星期三、星期四

6

星期四、星期五

7

星期五、星期六

11

仅星期日

1.2

仅星期一

1.3

仅星期二

14

仅星期三

15

仅星期四

16

仅星期五

17

仅星期六

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

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

  • holidays    可选。 一组可选的日期,表示要从工作日日历中排除的一个或多个日期。 holidays 应是一个包含相关日期的单元格区域,或者是一个由表示这些日期的序列值构成的数组常量。 holidays 中的日期或序列值的顺序可以是任意的。

说明

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

  • 如果start_date当前日期基值的范围外,则为 NETWORKDAYS。INTL 返回 #NUM! 。

  • 如果end_date当前日期基值的范围外,则为 NETWORKDAYS。INTL 返回 #NUM! 。

  • 如果周末字符串长度无效或包含无效字符,则为 NETWORKDAYS。INTL 返回 #VALUE! 。

示例

复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。 要使公式显示结果,请选中它们,按 F2,然后按 Enter。 如果需要,可调整列宽以查看所有数据。

公式

说明

结果

=NETWORKDAYS.INTL(DATE(2006,1,1),DATE(2006,1,31))

结果为 22 个将来工作日。 从两个日期之间的总天数 31 中减去 9 个非工作周末(5 个星期六和 4 个星期日)。 默认情况下,星期六和星期日被视为非工作日。

22

=NETWORKDAYS.INTL(DATE(2006,2,28),DATE(2006,1,31))

结果为 -21,即 21 个过去的工作日。

-21

=NETWORKDAYS.INTL(DATE(2006,1,1),DATE(2006,2,1),7,{"2006/1/2","2006/1/16"})

从 2006 年 1 月 1 日和 2006 年 2 月 1 日之间的 32 天中减去 10 个非工作日(4 个星期五、4 个星期六和 2 个假日),结果为 22 个将来工作日。 使用 7 作为周末参数(星期五和星期六)。 在该时间段中有两个假日。

22

=NETWORKDAYS.INTL(DATE(2006,1,1),DATE(2006,2,1),"0010001",{"2006/1/2","2006/1/16"})

结果为 22 个将来工作日。 与上述示例中的时间段相同,但是将星期六和星期三视为周末。

20

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。