excel如何统计某日期段内的工作日天数

如题所述

1、统计两个日期之间的工作日天数(按周六、日双休不考虑节日)

这个最简单,相应的EXCEL公式如下:

C2:=NETWORKDAYS(A2,B2)

实例下载:统计两个日期之间的工作日天数(按周六、日双休不考虑节日).xls

2、统计两个日期之间的工作日天数(按周日单休不考虑节日)

如图所示,相应的EXCEL公式如下:

C2:=NETWORKDAYS.INTL(A2,B2,11)

实例下载:统计两个日期之间的工作日天数(按周日单休不考虑节日).xls

3、统计两个日期之间的工作日天数(自定义节假日,按周六、日双休)

这个就比较复杂了,但更具有通用性,其实也是可以使用相应的Excel函数解决的。

解决思路:

1、使用NETWORKDAYS.INTL函数统计两个日期之间的工作日数

2、调整该函数的第3、4参数以实现需求,具体解析见下

3、第4参数可以结合自定义名称的创建以实现节假日区域的自由扩展,公式结果动态更新。

关于第3参数weekend第二种表达方式的几点说明:

1、weekend 的表达方式2是一个长度为7的字符串

2、该字符串中的每个字符代表一周中的一天,从星期一开始

3、1 代表休息日,0代表工作日

4、该字符串中只允许使用字符 1和 0

关于第4参数holidays的几点说明:

1、是一个包含一个或多个日期的可选集合,这些日期将作为节假日不参与工作日个数统计

2、可以是包含日期的单元格区域,也可以是区域的引用,还可以是代表日期序列值的数组常量

3、其中的日期或序列值顺序可以任意打乱,不影响统计。

【公式】

打开名称管理器创建自定义名称holidays=OFFSET(Sheet1!$E$2,,,COUNTA(Sheet1!$E:$E)-1)

C2输入公式:=NETWORKDAYS.INTL(A2,B2,1,holidays)

实例下载::统计两个日期之间的工作日天数(自定义节假日,按周六、日双休).xls

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2020-12-26
=NETWORKDAYS(a10,a2,0)
返回是除周六与周天的日期。但计算了两头的日期,按我的生活中计算,算头不算尾的方式,那么你必须减1.那公式写成=NETWORKDAYS(E10,E11,0)-1,如果你前面的日期大于后面的日期,那返回的负数,所以,你要加上绝对值的函数。=ABS(NETWORKDAYS(E10,E11,0))-1本回答被提问者采纳
第2个回答  2013-01-27
使用NETWORKDAYS函数进行处理
Excel版本参考:2010
测试:A1和A2单元格中日期段内的工作日天数
1、选中B1单元格
2、输入公式:=NETWORKDAYS(A1,A2)
3、回车,查看效果
知识点补充:NETWORKDAYS语法:NETWORKDAYS(开始日期,结束日期)
工作日不包括周末和专门指定的假期。可以使用函数
NETWORKDAYS,根据某一特定时期内雇员的工作天数,计算其应计的报酬。
相似回答