本文目录一览:
Excel计算全年、每月或一段时间内的工作日天数(去除节假日、周末和调休)
计算一段日期内的应出勤天数是工作中经常遇到的问题, 不仅需要考虑周末, 还要考虑国家的法定节假日和调休等.
在日常的工作中有以下四种情况:
为了计算上面的四种情况, 需要用到Excel中的两个函数: NETWORKDAYS和NETWORKDAYS.INTL. 接下来首先介绍四种情况的解决方法, 最后介绍两个函数的详细使用方法.
这种情况下, 所有的周六和周日都是休息日, 除周六和周日外的日期都是正常工作日. 这时可以使用NETWORKDAYS函数可以解决.
NETWORKDAYS的使用方法是: NETWORKDAYS(start_date, end_date, [holidays]) , 函数包含三个参数:
计算示例如下
这种情况下所有的周末和指定的节假日是休息日, 其余时间为正常的工作日, 示例如下: C2 单元格的计算公式为: NETWORKDAYS(A2,B2,$E$2:$E$6) , 其中 A2 和 B2 分别表示开始日期和结束日期, 第三个参数 $E$2:$E$6 表示法定节假日.
单休的情况下就不能使用 NETWORKDAYS 函数了, 需要使用另外一个函数 NETWORKDAYS.INTL , 该函数包括四个参数, 分别是:
根据NETWORKDAYS.INTL函数的定义我们可以得到此种情况的解决方案, 需要使用前三个参数. 示例如图所示:
其中前两个参数 A2 和 B2 分别表示开始和结束日期, 第三个参数 "0000001" 表示每周周日是休息日, 其他是工作日. 工作日天数的计算公式就是: =NETWORKDAYS.INTL(A2,B2,"0000001")
这种情况是最复杂的情况, 也是最常见的情况. 如果只考虑节假日, 那么我们只需要使用 NETWORKDAYS 函数就可以解决. 但是涉及调休之后不行了.
所以还是需要使用 NETWORKDAYS.INTL 函数, 但是需要换个思路来解决问题.
按照这个思路, 函数的前两个参数仍然是开始日期和结束日期, 第三个参数定义为 "0000000" , 第四个参数是所有的周末加所有的节假日, 减去调休的日期.
那么下图的例子中, 工作日天数的计算公式就是: =NETWORKDAYS.INTL(A2,B2,"0000000",$E$2:$E$116)
该函数用于计算从指定的开始日期(包含)到结束日期(包含)的工作日的天数, 工作日不包括周末和指定的节假日. 具体的使用方法如下, 详细使用方法参见 官方文档
NETWORKDAYS(start_date, end_date, [holidays])
该函数有三个参数, 每个参数代表的意义如下:
返回两个日期之间的所有工作日数,可以使用参数指定哪天是周末(这对于单休的公司非常有用),也可以指定除周末外的其他节假日。周末和任何指定为假期的日期不被视为工作日。详细使用方法可以参考 官方文档
NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays])
该函数有三个参数, 每个参数的解释如下:
字符串是长度为7的0、1组合, 0表示工作日, 1表示周末, 如"0000011"表示周一到周五是工作日, 周六和周日是周末; "0000001"表示周一到周六是工作日, 周日是休息日.
利用excel公式计算工作日?
大哥,你脑壳咋那么死啊,本来9月27日周日该休息的,现在当成工作日了,所以你要问927开始算以后的工作日,其实就是问除开927那天,也就是后面9个工作日后日期!!!
工作日计算,在Excel中如何操作?
工具/材料:Microsoft Office Excel2016版,Excel表格。
1、首先选中Excel表格,双击打开。
2、然后在该界面中,选中要显示计算工作日的单元格。
3、其次在该界面中,在公式栏中输入计算工作日的公式“=A1-B1”。
4、其次在该界面中,点击公式栏左侧“打钩”按钮。
5、最后在该界面中,成功显示工作日计算结果。