在 Excel 个文件之间传输日期(不准确)

Transferring dates between Excel files (inaccurately)

我经常使用以下公式将信息从一个文件复制到另一个文件。本质上,它采用给定的 ID (A2) 并在第二个电子表格中搜索它的匹配项,然后从公式第一部分(在本例中为 C)中指定的列中复制数据。

=INDEX([spreadsheet.xlsx]Sheet1!$C:$C000,MATCH(A2,[spreadsheet.xlsx]Sheet1!$B:$B000,0))

该公式适用于所有列,除非我尝试传输日期。它总是传输一个比实际日期大 4 年零 1 天的日期。我在转移日期时并不总是遇到这个问题,但我不知道是什么原因造成的。

有什么想法吗?

Microsoft 的略微缩写:


Excel 支持两种不同的日期系统:

1900 年日期系统
在 1900 日期系统中,支持的第一天是 1900 年 1 月 1 日。当您输入日期时,该日期将转换为一个序列号,表示自 1900 年 1 月 1 日以来经过的天数。例如,如果您输入 July 5, 1998,Excel 将日期转换为序列号 35981。

默认情况下,Excel for Windows 使用 1900 日期系统。

1904 年日期系统
在 1904 日期系统中,支持的第一天是 1904 年 1 月 1 日。当您输入日期时,该日期将转换为一个序列号,表示自 1904 年 1 月 1 日以来经过的天数。例如,如果您输入 July 5, 1998,Excel 将日期转换为序列号 34519。

默认情况下,Excel Macintosh 使用 1904 日期系统。由于早期 Macintosh 计算机的设计,不支持 1904 年 1 月 1 日之前的日期。此设计旨在防止与 1900 年不是闰年这一事实相关的问题。如果您切换到 1900 日期系统,Macintosh 的 Excel 最早支持 1900 年 1 月 1 日的日期。

日期系统之间的区别

由于两个日期系统使用不同的起始日,相同的日期在每个日期系统中由不同的序号表示。两个日期系统之间的差异是 1,462 天;也就是说,1900 日期系统中日期的序号始终比 1904 日期系统中相同日期的序号大 1,462 天。 1,462天等于四年零一天(包括'leap'天)。

设置工作簿的日期系统
在 Excel 中,每个工作簿都可以有自己的日期系统设置,即使打开了多个工作簿也是如此。

要在 Microsoft Office Excel 2007 中设置工作簿的日期系统,请按照下列步骤操作:
1. 打开或切换到工作簿
2. 单击 Microsoft Office 按钮,然后单击 Excel 选项
3. 点击高级
4. 单击select 使用 1904 数据系统 复选框在 计算此工作簿时 下,然后单击 确定

请注意,如果您更改已包含日期的工作簿的日期系统,日期将移动四年零一天。

在工作簿之间链接和复制日期时出现问题
如果两个工作簿使用不同的日期系统,您在 link 或在工作簿之间复制日期时可能会遇到问题。具体来说,日期可能会偏移四年零一天。