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



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

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

该公式在所有列上都工作得很好,除了当我试图转移日期时。它总是传输一个比实际日期大4年零1天的日期。我并不总是在转移日期时遇到这个问题,但我不知道是什么原因导致的。

任何想法吗?

来自Microsoft的略为缩写:


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

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

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


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

默认情况下,用于Macintosh的Excel使用1904日期系统。由于早期麦金塔电脑的设计,1904年1月1日之前的日期不支持。这种设计是为了防止1900年不是闰年这一事实带来的问题。如果切换到1900年日期系统,用于Macintosh的Excel不支持早于1900年1月1日的日期。

日期系统的差异

由于两种日期系统使用不同的起始日期,因此相同的日期在每个日期系统中用不同的序列号表示。两种日期系统的差异是1462天;也就是说,1900日期系统中的日期序列号总是比1904日期系统中的相同日期的序列号大1462天。1462天等于四年零一天(包括一个闰日)。

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

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

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

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

最新更新