在 Excel 中获取两个日期之间的工作时长
作者:互联网
2026-04-12
通常,您需要为员工计算工资收入,此时应先计算两个日期之间,排除周末和节假日的工作时长。Excel 中的 NETWORKDAYS 函数可帮助您快速得出实际工作日数,再将其乘以每日工作时长,即可轻松获得总工作时长。

- 计算两个日期之间(不含默认周末)的工作时长
- 计算两个日期之间(排除周末及假期)的工作时长
- 计算两个日期之间(自定义周末)的工作时长
- 计算两个日期之间(自定义周末及假期)的工作时长
计算两个日期之间(不含默认周末)的工作时长
如果想要获取排除默认周末(星期星期天)后,两个日期之间的工作时长,可使用基于 NETWORKDAYS 函数的下列通用公式:
=NETWORKDAYS(start_date,end_date) * working_hours- start_date, end_date:用于计算工作日的起始和结束日期。
- working_hours:每个工作日的工作时长。(默认设置为 8 小时,您可根据实际需求进行调整)
1. 请使用以下公式计算工作时长:
=NETWORKDAYS(A2,B2 )*8然后,将填充柄拖动到您需要粘贴此公式的单元格,即可得到日期结果列表,如下图所示:

2. 接下来,请将日期单元格的格式设置为常规。选择计算结果单元格后,点击开始选项卡中的数字格式下拉列表下的常规,即可看到如下图所示的工作时间:

计算两个日期之间(排除周末及假期)的工作时长
如果两个日期之间包含节假日,如何在 Excel 中同时排除这些假期?

通用公式:
=NETWORKDAYS(start_date, end_date, [holidays]) * working_hours- start_date, end_date:用于计算工作日的起始和结束日期。
- holidays:需要在两个日期之间排除的日期单元格区域。
- working_hours:每个工作日的工作时长。(默认设置为 8 小时,您可根据需要自行调整)
1. 请在您希望显示结果的空白单元格中输入以下公式:
=NETWORKDAYS(A4,B4,$E$4:$E$6 )*8然后拖动填充柄,将公式填充到所需的单元格,会显示日期格式列表,如下图所示:

2. 接下来,请将日期单元格格式设置为常规格式,即可获得如下结果:

计算两个日期之间(自定义周末)的工作时长
有时,您可能需要在排除特定自定义周末(例如仅星期天,或星期天和星期一,不包括节假日)的情况下,计算两个日期之间的工作天数。此时,建议您使用 Excel 的 NETWORKDAYS.INTL 函数。其公式语法如下:
=NETWORKDAYS.INTL(start_date, end_date, [weekend]) * working_hours- start_date, end_date:用于设定计算工作日的起止日期。
- weekend:用于指定您希望作为周末的具体星期,而非默认周末。可以输入周末的编号或字符串。
- working_hours:每个工作日的工作时长。(默认设置为 8 小时/天,可根据实际需求自定义)
周末编号值对应以下周末:
| 周末编号 | 周末 |
| 1 或省略 | 星期星期天 |
| 2 | 星期天和星期一 |
| 3 | 星期一和星期二 |
| 4 | 星期二和星期三 |
| 5 | 星期三和星期四 |
| 6 | 星期四和星期五 |
| 7 | 星期五和星期六 |
| 11 | 仅星期天 |
| 12 | 仅星期一 |
| 13 | 仅星期二 |
| 14 | 仅星期三 |
| 15 | 仅星期四 |
| 16 | 仅星期五 |
| 17 | 仅星期六 |
本例中,将计算两个日期之间的工作时长,并只排除自定义周末为星期天,请使用以下公式:
=NETWORKDAYS.INTL(A4,B4,11)*8然后,将填充柄向下拖动到您要应用此公式的单元格,接着将计算后的日期结果设置为常规格式,便可获得如下所需结果:

计算两个日期之间(自定义周末及假期)的工作时长
您还可使用以下公式,获取同时排除自定义周末及假期的两个日期间工作时长:
=NETWORKDAYS.INTL(start_date, end_date, [weekend], [holidays]) * working_hours- start_date, end_date:用于计算工作日的开始和结束日期。
- weekend:您希望设为周末而非默认周末的具体星期。可为周末编号或字符串。
- holidays:需要排除在两个日期间的日期单元格区域。
- working_hours:每个工作日的工作小时数。(默认设置为 8 小时/天,可根据实际需求进行调整)
例如,可用下面的公式计算排除自定义周末(星期天与星期一)及节假日的工作时长:
=NETWORKDAYS.INTL(A4,B4,2,$E$4:$E$6)*8然后,把计算出的日期结果转换为常规格式,您即可获得下方需要的结果:

相关函数使用说明:
- NETWORKDAYS:
- 此函数用于计算两个指定日期之间的工作日天数。
- NETWORKDAYS.INTL:
- 返回排除默认周末(星期星期天)或用户自定义周末后计算的工作日天数。
相关工时/工作日教程:
- 在 Excel 中计算每月工作时间:
- 通常,大多数人每天工作 8 小时,每周工作 5 天。我想统计每月的总工作时长,以便计算工资。在 Excel 中,如何计算每月的总工作时间?
- 在排除周末或假期的情况下,计算两个日期之间的净工作时长:
- 在许多公司,员工的薪酬是根据工作时长结算的。计算一天的净工作时长很简单,那么,如何计算一个日期范围内的净工作时长呢?
- 在 Excel 中计算本月剩余工作日天数:
- 本文将为您介绍如何根据今天或指定日期,计算当月剩余工作日的方法。
- 在 Excel 中查找某月的首日/末日或首个/末个工作日:
- 您是否了解如何在工作表中查找指定月份的第一天、最后一天,以及该月的首个和最后一个工作日?例如,当日期为 2014/5/21 时,如何获取该月的首日和末日(即 2014/5/1 和 2014/5/31),以及首个工作日(2014/5/1)和最后一个工作日(2014/5/30)?
- 在 Excel 中为日期增加工作日或工作小时数:
- 您可能需要为日期增加一定的工作日或工作小时,以准确掌握在工作时间内完成任务的具体时间。
这款
相关标签:
相关推荐
专题
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
最新数据
相关文章
如何在 Excel 中从全名中删除中间名的首字母?
如何在 Excel 中进行乘法运算?——完整方法指南
如何在 Excel 中根据特定值快速为列表排名?
如何快速将 Excel 表格转换为 PDF 文件?
如何在 Excel 中查找指定区域内的最大字母?
如何在 Excel 中判断某个时间是否介于两个指定时间之间?
如何在 Excel 中设置,当特定单元格为空时禁止保存文件?
如何在 Excel 中向表格左侧插入一列?
如何在 Excel 中突出显示特定数字的倍数?
如何在 Excel 中按特定单词对列表进行排序?
AI精选
