Excel 将 DATE() 函数中输入的年份“20”解释为 1920,而不是 2020

Excel 将 DATE() 函数中输入的年份“20”解释为 1920,而不是 2020

我尝试使用该函数将两位数年份的日期(例如 20)转换为四位数字年份的标准日期DATE()

例如,当日期包含年份“20”(当前年份)时,Excel 会将其解释为“1920”,结果=DATE(20,1,1)为“1920-01-01”。这是为什么呢?

“区域设置”中如何解释年份的设置设置为“1951 到 2050”,因此 Excel 不应该这样做。

我正在使用 Microsoft Office 365 版本 2004。

答案1

这是 DATE 函数的特定行为,并不参考系统日历设置或 Excel 对日期的一般解释。

DATE 函数

年份参数可以是 1 到 4 位数字。具体来说,根据 @patkim 对您帖子的评论:

如果年份介于 0(零)和 1899(含)之间,Excel 会将该值与 1900 相加来计算年份。例如,DATE(108,1,2) 返回 2008 年 1 月 2 日 (1900+108)。

因此,需要将 2 位数字添加到 1900 才能得到年份。

因此,在输入 2 位数字时,不要将 DATE 函数的第一个参数视为年份,而将其视为“自 1900 年以来的年份”可能更有帮助。

如果您使用 DATE 将另一个单元格中的实际日期转换为同一年的新日期,请考虑如下操作:

=DATE(YEAR(A1),1,1)

这也将有助于实现 2020 年:

=DATE(120,1,1)

在此处输入图片描述

答案2

这个是正常的。

https://techcommunity.microsoft.com/t5/excel/2-digit-year-when-importing/mp/65676

为确保年份值按您的预期进行解释,请将年份值键入为四位数(例如,2001,而不是 01)。输入四位数年份后,Excel 将不会为您解释世纪。

我发现总体而言使用 4 位数字的年份更好(对我们的客户和我们自己而言),以避免混淆并将 Windows 日期设置保留为默认设置。

答案3

如您所知,至少有两种方法可以输入两位数的年份日期。

如果你输入:

1/1/20

Excel UI 将遵循 Windows 区域设置并显示:

1/1/2020

(或指定格式)但是,如果您使用DATE()工作表函数并输入:

=DATE(20,1,1)

Windows 区域设置可能不受尊重,并且 UI 将被解释为:

1/1/1920

(我从来没有问过“为什么”这个问题)

相关内容