跳至主要内容

在 Excel 中计算两个日期之间的天数(7 个示例)

Author: Zhoumandy Last Modified: 2025-07-31

作为 Excel 用户,您可能会遇到需要知道 Excel 中两个日期之间有多少“天”的情况。或者您想计算“今天与特定日期之间的天数”。或者您希望获取“两个日期之间的工作日天数”。本教程将介绍几种简单快速的方法来计算所有“三种场景”中两个日期之间的天数。使用减法计算两天之间的天数 使用减法 使用 Kutools 计算天数、周数... 使用 DAYS 函数 使用 DATEDIF 函数 计算今天与某日期之间的天数 计算两个日期之间的工作日 排除周末 排除周末和节假日

A screenshot showing an Excel sheet used to calculate the days between two dates

A screenshot showing an Excel sheet used to calculate the days between today and a date

A screenshot showing an Excel sheet used to calculate workdays between two dates

视频:计算日期之间的天数


计算两个日期之间的天数

假设您的“开始日期”在单元格“C2”中,“结束日期”在单元格“C3”中,您想找出这两个日期之间的天数。在本节中,我们将向您展示实现目标的“四种方法”。

doc calculate days between two dates 04

使用减法

要计算两个日期之间的天数,只需“用结束日期减去开始日期”。以下是通用公式:

=结束日期 - 开始日期
步骤 1:输入减法公式

在单元格 C6 中,应用以下公式,然后按“Enter”键。

=C3-C2
结果

如您所见,给定的两个日期之间有“180”天。

A screenshot showing the subtraction formula to calculate days between two dates in Excel

注意事项:
  1. 在 Excel 中,日期实际上是数字。例如,1/1/1900 是数字 1。这就是为什么相减日期会得到它们之间的天数。
  2. 如果结束日期早于开始日期,返回的结果将是一个“负”整数。如果您希望始终获得“正”结果,可以使用以下公式:
    =ABS(结束日期 - 开始日期)

使用 Kutools 计算日期之间的天数、周数、月数和年数

通过“Kutools for Excel”的“日期和时间助手”功能,您还可以计算日期之间的天数。更重要的是,此功能更强大,因为它提供了“更多选项”,比如计算两个日期之间的“周数”、“月数”、“年数”等。下面的截图展示了如何“逐步计算日期之间的天数”,以及您可以计算的“更多选项”。

A screenshot of Kutools' Date & Time Helper showing steps to calculate days between dates in Excel

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

通过点击“Kutools”>“公式助手”>“日期和时间助手”启用该功能后,请按照以下步骤操作:

  1. 在“类型”部分选择“差异”;
  2. 分别在“日期1”和“日期2”文本框中选择开始日期和结束日期;
  3. 从“输出结果类型”下拉列表中选择“天”;
  4. 点击“确定”。
注意:
  1. 要应用“日期和时间助手”功能,您需要先安装“Kutools for Excel”。“Kutools for Excel”提供 30 天免费试用且无任何限制,立即下载并安装!
  2. 除了计算两个日期之间的差异外,日期和时间助手功能还支持其他日期和时间计算。要“添加日期和时间”,请在类型部分勾选“添加”选项。要根据给定日期“计算年龄”,请在类型部分勾选“年龄”选项。
    A screenshot of Kutools' Date & Time Helper feature calculating the difference between two dates
    A screenshot of Kutools' Date & Time Helper feature offering an option for age calculations

使用 DAYS 函数

另一种获取两个日期之间天数的方法是使用 DAYS 函数,该函数在 Excel 2013 中引入。通用公式如下所示:

=DAYS(结束日期, 开始日期)
步骤 1:输入 DAYS 公式

在单元格“C6”中,应用以下公式,然后按“Enter”键。

=DAYS(C3,C2)
结果

C3 和 C2 单元格中的两个日期之间有“180”天。

A screenshot showing the DAYS function in Excel to calculate the interval between two dates

注意:如果“结束日期”早于“开始日期”,返回的结果将是一个“负”整数。如果您希望始终获得“正”结果,可以使用以下公式:
=ABS(DAYS(结束日期, 开始日期))

使用 DATEDIF 函数

第四种计算两个日期之间天数的方法是使用 DATEDIF 函数。以下是计算两个日期之间天数差异的“通用公式”:

=DATEDIF(开始日期, 结束日期, "d")
步骤 1:输入 DATEDIF 公式

在单元格“C6”中,应用以下公式,然后按“Enter”键。

=DATEDIF(C2,C3,"d")
结果

给定的两个日期之间有“180”天。

A screenshot showing the DATEDIF function in Excel to calculate the number of days between two dates

注意:
  1. 与其他三种方法不同,“DATEDIF”公式不支持从较新的日期中减去较旧的日期。当“结束日期”早于“开始日期”时,将返回“#NUM!”错误。
  2. 不同于只能计算天数的减法公式和“DAYS”函数,“DATEDIF”还可以计算两个日期之间的“月数”或“年数”。
  3. “DATEDIF”未包含在 Excel 的函数列表中,这意味着它是一个“未记录”的函数。这要求您手动输入所有参数以在工作表中创建“DATEDIF”公式。

计算今天与某日期之间的天数

如果您想计算今天与特定日期之间的天数,Excel 内置的“TODAY”函数可以帮助您轻松快速地完成任务。以下是使用“TODAY”函数计算今天与另一日期之间天数的“两个通用公式”:

计算“过去日期”与“今天”之间的天数:

=TODAY() - 过去日期

计算“未来日期”与“今天”之间的天数:

=未来日期 - TODAY() 

在此情况下,您在单元格“C2”中有“未来日期”,而今天是 2023 年 3 月 15 日。您需要计算今天与该日期之间的天数,请按照以下步骤操作。

A screenshot showing a future date in Excel to calculate days using the TODAY function

步骤 1:输入公式

在单元格“C5”中,应用以下公式,然后按“Enter”键。

=C2-TODAY()

A screenshot showing the formula calculating days between today and a future date in Excel

步骤 2:将结果格式化为常规

选择结果单元格,点击“开始”选项卡,转到“数字”组,然后从“数字格式”下拉列表中选择“常规”。

A screenshot showing the Number Format option in Excel to format the result as General

注意:或者在“开始”选项卡上,点击“数字”旁边的“对话框启动器”。然后在“类别”框中点击“常规”。

结果

如您所见,今天与给定日期之间有“108”天。

A screenshot showing the result of days calculated between today and a future date in Excel

注意:“TODAY”函数将给出当前日期。因此,当特定日期固定时,您会发现工作表中返回的天数会有所不同,因为“TODAY”函数每天都会变化。


计算两个日期之间的工作日

有时,我们可能需要计算不包括周末的天数。在这里,我们将向您展示如何在两种情况下借助“NETWORKDAYS”函数计算两个日期之间的工作日。一种情况是不考虑额外假期的工作日计算。另一种情况是考虑额外假期的工作日计算。

以下是 NETWORKDAYS 函数的通用公式:

=NETWORKDAYS(开始日期, 结束日期, [假期])

排除周末

例如,您在单元格 C2 中有开始日期,在单元格 C3 中有结束日期,您想找出这两个日期之间不考虑假期的工作日天数。

A screenshot showing start and end dates in Excel for calculating working days excluding weekends

步骤 1:输入 NETWORKDAYS 公式

在单元格 C6 中,应用以下公式,然后按“Enter”键。

=NETWORKDAYS(C2,C3)
结果

您可以看到,不考虑假期的情况下,两个日期之间有“130”个工作日。

A screenshot showing the result of the NETWORKDAYS formula calculating working days excluding weekends in Excel

排除周末和假期

与上面的例子不同,您在数据范围 C5:C8 中列出了额外的假期,并且您需要计算两个日期之间的工作日天数(考虑提供的假期)。

A screenshot showing start and end dates in Excel with a list of holidays for calculating working days

步骤 1:输入 NETWORKDAYS 公式

在单元格 C6 中,应用以下公式,然后按“Enter”键。

=NETWORKDAYS(C2,C3, E3:E7)
结果

您可以看到,考虑提供的假期,两个日期之间有“125”个工作日。

A screenshot showing the result of the NETWORKDAYS formula calculating working days excluding weekends and holidays in Excel

注意:在世界大多数地方,周末是“星期六”和“星期日”。那么“NETWORKDAYS”函数正是您所需要的。但如果您的周末不是周六和周日(例如仅周日),则应使用“NETWORKDAYS.INTL”函数,该函数允许您指定哪些日子应被视为周末。

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!