Excel如何计算两个日期间的工作日/节假日天数

作者:没什么大不了 | 创建时间: 2023-07-15
我们按出勤天数去计算员工工资时,就需要计算两个日期之间的工作日天数。 一般情况下,实际的工作日是 需要去除周末双休和国假日的。 而 有的公司是单休,只有周日休息,周六是上班的。 我们需要 使用NETWORKDAYS函数来处理,详情请看敏丝下...
Excel如何计算两个日期间的工作日/节假日天数

操作方法

情形1:计算日期间的工作日天数。 下图中,我们是 计算开始日期到结束日期之间的工作日天数,同时,我们要 去除D列中的日期(国假日,或者指定的特殊日期)。

NETWORKDAYS函数的语法结构是: =NETWORKDAYS(开始日期,结束日期,要去除的特殊日期) 正好可以满足我们的需求。

要去除的日期,我们也可以直接写到函数公式中。 日期的本质也是数值,我们选中D2单元格后,按 Ctrl+1组合快捷键,设置单元格格式为:"数字">"常规",我们可以看到 日期2018/4/1的本质是数字43195。 写公式的过程中,要么写 日期2018/4/5的时候加上前后双引号,要么 直接写数字43195。

情形2:计算单休(仅周日休息)时日期间的工作日天数。 我们需要使用一个新的函数:NETWORKDAYS.INTL。 NETWORKDAYS.INTL函数是在NETWORKDAYS函数的 第2、3个参数之间加入了1个参数。 参数输入什么数字,请参考下表。

情形3:计算日期间的休息日天数。 我们只需要使用 结束日期减去开始日期,加上数字1,然后减去工作日天数即可。 加上数字1的原因:1号到10号一共是10天,10-1=9(只有9天),所以需要补回1天。

情形4:加入时间干扰后的日期之间计算工作日天数。 本例中,我们对开始时间和结束时间进行判断, 早于中午12:00,归为今天,晚于中午12:00(含12:00),归为明天(加上1天)。 举例:1月1号11:00为开始时间(早于12点),则开始日期为1月1号;如果1月1号13:00为开始时间(晚于12点),则开始日期为1月1号加一天,即1月2号(具体可参考下一步骤图片中的函数公式)。 时间的本质也是数值,我们可以通过设置单元格格式获取,这里 中午12:00的本质就是数字0.5。

我们需要先使用 IF函数判定出实际要计算的开始日期和结束日期,然后使用NETWORKDAYS函数计算两个日期之间间隔的工作日天数。

如对您有帮助,请投票或点赞鼓励一下敏丝,谢谢~

点击展开全文

更多推荐