商城首页欢迎来到中国正版软件门户

您的位置:首页 >Excel计算工作日天数及排除节假日方法

Excel计算工作日天数及排除节假日方法

  发布于2026-02-10 阅读(0)

扫一扫,手机访问

可使用NETWORKDAYS或NETWORKDAYS.INTL函数结合节假日区域计算工作日天数:前者默认排除周末并支持自定义节假日,后者还可自定义周末;另可用WORKDAY反向验证或辅助列逐日标记调试。

Excel如何计算工作日天数_Excel排除节假日的日期运算

如果您需要在Excel中计算两个日期之间的工作日天数,并且希望自动排除法定节假日,可以使用内置函数结合自定义节假日列表来实现。以下是几种可行的操作方法:

一、使用NETWORKDAYS函数(基础版)

NETWORKDAYS函数专用于计算两个日期之间的整数工作日天数,默认排除周六和周日。它支持传入一个节假日单元格区域,从而进一步剔除指定的非工作日。

1、在工作表中列出所有节假日日期,例如在E1:E10区域依次输入“2024/1/22”“2024/2/10”“2024/2/17”等法定假日。

2、在目标单元格中输入公式:=NETWORKDAYS(A1,B1,E1:E10),其中A1为起始日期,B1为结束日期,E1:E10为节假日区域。

3、按Enter键确认,结果即为排除周末及所列节假日后的工作日总数。

二、使用NETWORKDAYS.INTL函数(灵活版)

NETWORKDAYS.INTL允许用户自定义哪几天为周末,适用于实行单休、大小周或特殊轮班制的场景,同时仍可排除节假日。

1、确定自定义周末编码:例如“11”表示周一至周五为工作日,“12”表示周二至周六为工作日,完整编码表可在Excel帮助中查询。

2、在目标单元格中输入公式:=NETWORKDAYS.INTL(A1,B1,"11",E1:E10),其中"11"代表标准双休,E1:E10为节假日区域。

3、若需将周五、周六设为休息日,则改用编码"0000110"(从周一到周日逐位表示是否休息,1为休息),公式调整为:=NETWORKDAYS.INTL(A1,B1,"0000110",E1:E10)

三、通过数组公式配合WORKDAY反向推算(逆向验证法)

当已知起始日和工作日天数,需反推结束日期时,可用WORKDAY函数验证NETWORKDAYS结果是否一致;该方式也可用于交叉核对节假日排除逻辑是否准确。

1、在F1单元格输入预期工作日天数,例如“20”。

2、在G1单元格输入公式:=WORKDAY(A1,F1,E1:E10),得到从A1起第20个工作日对应的日期。

3、再用NETWORKDAYS计算A1与G1之间的工作日天数:=NETWORKDAYS(A1,G1,E1:E10),结果应等于F1中的数值,否则说明节假日区域存在重复或格式错误。

四、借助辅助列标记每日属性(可视化调试法)

对于复杂排班或需人工复核的情况,可构建逐日判断逻辑,明确标识每一日是否为工作日、周末或节假日,便于定位计算偏差来源。

1、在C1单元格输入起始日期,在C2输入=C1+1,下拉填充至覆盖整个日期范围。

2、在D1单元格输入公式:=IF(COUNTIF($E$1:$E$10,C1)>0,"节假日",IF(OR(WEEKDAY(C1)=1,WEEKDAY(C1)=7),"周末","工作日"))

3、选中D列数据,使用筛选功能仅显示“工作日”,然后复制可见单元格并计数,所得数量即为实际工作日天数。

本文转载于:互联网 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注