如何在 Excel 中计算两个日期之间的天数?

2025年3月17日 | 阅读 7 分钟

如果 Excel 用户想知道两个日期之间的天数,Excel 提供了一些强大的函数来找出两个日期之间的天数。这些函数通常在创建甘特图时间线或计算确切年龄时非常有用。本教程将简要介绍计算两个日期之间总天数的方法。

天数可以是总天数、周末天数或工作日天数。在本章中,我们将使用内置或用户定义的 Excel 公式来计算天数,并附带几个示例。

计算天数的 Excel 函数

正如我们所讨论的,Excel 提供了一些内置函数来计算天数,如下所示:

  • DAYS() - 此函数用于计算两个日期之间的差值,即天数。
  • DATEDIF() - 此函数用于计算两个日期之间的差值,可以是天数、月数或年数。

我们将在下面的章节中详细讨论这些函数及其示例。

我们将讨论什么 -

在本章中,我们将涵盖以下主题来计算两个日期之间的差值 -

  1. 使用 DAYS() 计算两个日期之间的天数
  2. 使用 DATEDIF() 计算两个日期之间的天数
  3. 组合 DATEDIF() 函数中的单位
  4. 计算剩余天数的公式
  5. 组合三个公式以按格式显示天数

DAYS() 函数

DAYS() 是 Excel 中的一个日期函数,它有助于将两个日期之间的差值计算为天数。此函数通常需要两个简单参数,即开始日期和结束日期。

"2020 年 3 月 1 日和 2020 年 3 月 3 日之间的天数,DAYS() 函数将返回 2 天。但如果您想包含这两天,请在结果中加 1。"

语法

此函数只需要两个参数:start_date(开始日期)和 end_date(结束日期)来获取天数差。

start_date 参数包含一个日期,从该日期开始计算天数。同时,end_date 包含一个日期,以结束天数的计数。

注意:结束日期是第一个参数,开始日期是第二个参数。因此,请勿提供错误的值。

使用 DAYS() 计算两个日期之间的天数

我们将使用简单的 Excel 工作表数据并应用此公式来使用 DAYS() 函数获取两个日期之间的差值。

示例 1

步骤 1:A 列中是开始日期,B 列中是结束日期。请参阅以下数据集。

How to calculate number of days between two dates in Excel?

步骤 2:选择一个单元格(例如 C2)来存储返回值,并在公式栏或 C2 单元格本身中输入以下 DAYS() 公式。

=DAYS(B2,A2)

How to calculate number of days between two dates in Excel?

步骤 3:按键盘上的 **Enter** 键,获取计算出的天数。2020 年 3 月 22 日和 2020 年 12 月 8 日之间有 261 天。

How to calculate number of days between two dates in Excel?

示例 2

步骤 4:日期格式可能不同,但结果将保持一致。

How to calculate number of days between two dates in Excel?

步骤 5:通过更改日期格式,查看其他数据,值不会冲突,结果是一致的。

How to calculate number of days between two dates in Excel?

这是一个简单的几步过程即可计算出天数。现在,我们将使用 DATEDIF() 公式。

同样,您可以在任何需要获取日期之间天数的地方应用相同的公式。

DATEDIF() 函数

这是 Excel 中的另一个日期函数。它允许用户计算两个日期之间的差值,可以是天数、月数或年数。它是 DAYS() 函数的高级版本,功能更多。这意味着您可以根据需要以天数、月数或年数的形式获得结果。

语法

此函数接受三个参数:start_date(开始日期)、end_date(结束日期)和 unit(单位)。

前两个参数不言自明,第三个是单位。它接受一个值来衡量日期之间的差值。它可以是“D”、“M”或“Y”,分别代表天、月和年。

使用 DATEDIF() 计算两个日期之间的天数

现在,打开一个 Excel 工作表,应用此公式,使用 DATEDIF() 函数获取两个日期之间的天数差。

示例 1

步骤 1:A 列中是开始日期,B 列中是结束日期。请参阅以下数据集。

How to calculate number of days between two dates in Excel?

步骤 2:选择一个单元格(例如 C2)来存储返回值,并在公式栏或 C2 单元格本身中输入以下 DATEDIF() 公式。

=DATEDIF(A2,B2,"D")

在此公式中,我们在单位参数中使用“D”以天为单位获取计算结果。

How to calculate number of days between two dates in Excel?

步骤 3:按键盘上的 **Enter** 键,获取计算出的天数。2020 年 3 月 22 日和 2021 年 12 月 8 日这两个日期之间有 626 天。

How to calculate number of days between two dates in Excel?

这是一个简单的几步过程,类似于 DAYS(),可以以天数、月数或年数的形式获取差值。现在,我们将使用“M”和“Y”作为单位参数来获取月数和年数的结果。

步骤 4:使用相同的开始日期结束日期参数,但不同的单位值,查看更多输出。

How to calculate number of days between two dates in Excel?

注意:DATEDIF() 函数已从 Excel 中弃用,但尚未完全移除。因此,您也可以在它被移除之前使用它。

组合 DATEDIF() 函数中的单位

除了单个单位,您还可以提供两个单位的组合,例如“MD”、“YD”、“YM”。两个单位的组合会提供不同类型的结果。

“MD” -它将仅返回上个月剩余的天数,并忽略月份和年份数据。

“YD” -它将返回上一年剩余的天数,并忽略月份和年份数据。

“YM” -它将返回上一年剩余的月份数。它会忽略天数和年份。

这种两个单位的组合可以通过日期差示例更好地理解。因此,我们将在下面的示例中逐个提供这些定义的单位参数。

上个月剩余天数

输入以下公式以获取上个月剩余的天数并查看结果。

=DATEDIF(A2,B2,"MD")

How to calculate number of days between two dates in Excel?

请记住 - 使用此单位参数(“MD”)返回的天数永远不会超过 31 天。它们总是小于 31 或 30,因为一个月最多有 31 天,不能更多。

返回上一年剩余天数

输入以下公式以获取上一年剩余的天数并查看结果。

=DATEDIF(A2,B2,"YD")

How to calculate number of days between two dates in Excel?

请记住 - 使用此单位参数(“YD”)返回的天数永远不会超过 364 天。它们总是小于 365 天,因为一年只有 365 天。闰年是一个例外情况。

返回上一年剩余月数

输入以下公式以获取上一年剩余的总月数并查看结果。

=DATEDIF(A2,B2,"YM")

How to calculate number of days between two dates in Excel?

请记住 - 无论何时使用此单位参数(“YM”),它永远不会返回超过 11 个月。因为一年只有 12 个月。无论有多少年。

计算剩余天数的公式

我们有一个不同的公式来计算完成另一个月或年剩余的天数。这些剩余的天数与另一个公式结合使用,以年、月和日的形式获取日期差。这种格式使得计算确切年龄等情况更容易理解。

这是一个不同的公式,它返回剩余天数而不是总天数。它只需要结束日期;请参阅下面的语法 -

语法

它将返回完成一个月或一年计算后的剩余天数。

让我们通过一个示例来了解这个公式,并应用结束日期。

步骤 1:我们有一些日期数据,其中 A2 单元格包含开始日期,B2 单元格包含结束日期。

How to calculate number of days between two dates in Excel?

步骤 2:我们已经创建了一个使用结束日期的新公式,如下所示。

在公式栏中输入公式,并像下面一样用您的 Excel 数据执行它。

How to calculate number of days between two dates in Excel?

步骤 3:按键盘上的 **Enter** 键,获取计算出的剩余天数,即 7 天。

How to calculate number of days between two dates in Excel?

此公式需要另外两个公式才能以(年、月、日)格式获得结果。我们将在下一个示例中向您展示。因此,请仔细学习,以便您可以轻松使用它。

组合三个公式以按格式显示天数

通过使用 DAYS() 和 DATEDIF() 公式,您只能分别获得两个日期之间的差值,即天数、月数或年数。但有时,您需要找到确切的结果格式,例如 5 年、2 个月、18 天。这种格式通常用于年龄计算和其他许多地方。因此,我们有解决方案。

我们可以组合三个公式来实现此结果。为此,我们需要以下三个公式:带单个单位的 DATEDIF() 公式、带两个单位的 DATEDIF() 以及剩余天数公式。

对于年数:带单个单位的 DATEDIF() 公式

对于剩余月数:带两个单位的 DATEDIF() 公式

对于剩余天数:剩余天数公式

使用 & 运算符组合所有三个公式,以获得一个完整的公式,一次性找到格式化的结果。虽然它会变成一个冗长的公式,但它会提供确切的结果。

也请看一个例子。

步骤 1:我们有两个日期数据,其中 A2 单元格包含开始日期,B2 单元格包含结束日期。

How to calculate number of days between two dates in Excel?

步骤 2:我们已经通过使用 & (AND) 运算符组合了三个单独的公式创建了一个公式。

您只需相应地提供单元格编号,并像下面一样用您的 Excel 数据执行它。

How to calculate number of days between two dates in Excel?

步骤 3:按 **Enter** 键,以年、月和日格式返回结果。

How to calculate number of days between two dates in Excel?

所以,这种格式比 626 天更易读,它也等于 1 年、8 个月、7 天。

注意:您也可以单独使用这些公式来获取各自的结果。


下一个主题MS Excel 的功能