Excel 中的1900和1904日期系统之间的差异

摘要

Microsoft Excel 支持两个不同的日期系统。 这些系统是1900日期系统和1904日期系统。 本文介绍了两个日期系统,以及在使用使用不同日期系统的工作簿时可能会遇到的问题。

详细信息

1900日期系统

在1900日期系统中,支持的第一天是1900年1月1日。 当您输入日期时,日期将转换为一个序列号,表示自1900年1月1日起已用天数的数字。 例如,如果输入1998年7月5日,Excel 会将日期转换为序列号35981。

默认情况下,Microsoft Excel for Windows 使用1900日期系统。 1900日期系统在 Excel 和其他电子表格程序(如 Lotus 1-2-3)之间实现了更好的兼容性,这些程序设计为在 MS-DOS 或 Microsoft Windows 下运行。

1904日期系统

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

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

日期系统之间的差异

因为这两个日期系统使用不同的开始日期,所以同一日期由每个日期系统中的不同序列号表示。 例如,1998年7月5日可以有两个不同的序列号,如下所示。

日期系统 1998年7月5日的序列号
1900 日期系统 35981
1904日期系统 34519

两个日期系统之间的差异为1462天;也就是说,1900日期系统中日期的序列号总是大于1462天大于在1904日期系统中相同日期的序列号。 1462天等于四年零一天(包括一个闰日)。

为工作簿设置日期系统

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

若要在 Microsoft Office Excel 2003 和早期版本的 Excel 中设置工作簿的日期系统,请按照下列步骤操作:

  1. 打开或切换到工作簿。
  2. 在“工具”**** 菜单上,单击“选项”****。 在适用于 Macintosh 的 Excel X 和更高版本中,单击 " Excel " 菜单上的 "首选项"。
  3. 单击 "计算" 选项卡。
  4. 若要在工作簿中使用1900日期系统,请单击以清除 " 1904 日期系统" 复选框。 若要在工作簿中使用1904日期系统,请单击以选中 " 1904 日期系统" 复选框。
  5. 单击“确定”。

若要在 Microsoft Office Excel 2007 中为工作簿设置日期系统,请按照以下步骤操作:

  1. 打开或切换到工作簿。
  2. 单击 " Microsoft Office 按钮",然后单击 " Excel 选项"。
  3. 单击“高级”。
  4. 单击 "计算此工作簿时" 下的 "使用1904数据系统" 复选框,将其选中,然后单击 "确定"

请注意,如果您更改已包含日期的工作簿的日期系统,则日期将移动四年零一天。 有关如何更正已移动日期的信息,请参阅 "更正已移动的日期" 部分。

在工作簿之间链接和复制日期的问题

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

若要查看此行为的示例,请按照以下步骤操作:

  1. 在 Excel 中,创建两个新工作簿(Book1.xls 和 Book2)。

  2. 按照 "设置工作簿的日期系统" 一节中的步骤操作,在 Book 1 中使用1900日期系统。 在 Book2 中使用1904日期系统。

  3. 在 Book1.xls 中,输入日期1998年7月5日。

  4. 选择包含日期的单元格,然后单击 "编辑" 菜单上的 "复制"。

    注释在 Excel 2007 中,选择包含日期的单元格,然后单击 "开始" 选项卡上 "剪贴板" 组中的 "复制"。

  5. 切换到 Book2,选择一个单元格,然后单击 "编辑" 菜单上的 "粘贴"。

    注释在 Excel 2007 中,切换到 Book2,选择一个单元格,然后单击 "开始" 选项卡上 "剪贴板" 组中的 "粘贴"。

    将日期粘贴为2002年7月6日。 请注意,该日期是四年,一天晚于步骤3中的日期,因为 Book2 使用1904日期系统。

  6. 在 Book2 中,键入日期1998年7月5日。 选择包含该日期的单元格,然后单击 "编辑" 菜单上的 "复制"。

    注释在 Excel 2007 中,在 Book2 中键入日期年7月 5 1998 日。 选择包含日期的单元格,然后单击 "开始" 选项卡上 "剪贴板" 组中的 "复制"。

  7. 切换到 Book1.xls,选择一个单元格,然后单击 "编辑" 菜单上的 "粘贴"。

    注释在 Excel 2007 中,切换到 Book1.xls,选择一个单元格,然后单击 "开始" 选项卡上 "剪贴板" 组中的 "粘贴"。

    将日期粘贴为1994年7月4日。 它已向下移动四年零一天,因为 Book1.xls 使用的是1900日期系统。

更正已移动的日期

如果链接或复制工作簿之间的日期,或者更改已包含日期的工作簿的日期系统,则日期可能会移动四年零一天。 您可以按照以下步骤更正已移动的日期:

  1. 在一个空单元格中,输入值1462。

  2. 选择单元格。 在“编辑”**** 菜单上,单击“复制”****。

    注释在 Excel 2007 中,选择单元格,然后单击 "开始" 选项卡上 "剪贴板" 组中的 "复制"。

  3. 选择包含已移动的日期的单元格。 在 "编辑" 菜单上,单击 "选择性粘贴"。

    注释在 Excel 2007 中,选择包含已移动的日期的单元格,单击 "开始" 选项卡上的 "剪贴板" 组中的 "粘贴",然后单击 "选择性粘贴"。

  4. 在 "选择性粘贴" 对话框中,单击以选中 "粘贴" 下的 "" 复选框,然后单击以选中 "操作" 下的以下复选框之一。 |选择此| If| |---|---| |加法| 日期必须向上移动四年零一天。| |减法 |日期必须向下移动四年零一天。|

  5. 单击"确定"。

重复这些步骤,直到更正了所有已移动的日期。

如果要使用公式链接到另一个工作簿中的日期,并且由于工作簿使用不同的日期系统而导致公式返回的日期不正确,请修改公式以返回正确的日期。 例如,使用以下公式:

=[Book2]Sheet1!$A$1+1462

=[Book1]Sheet1!$A$1-1462

在这些公式中,将从 date 值中添加或删除1462。