在 Excel 单元格中键入长串数字时,最后一位数字将更改为零

症状

在 Microsoft Excel 单元格中键入包含 15 位以上的数字时,Excel 会将第十五位以后的任何数字更改为零。 例如,按照以下格式键入信用卡 ID 号:

####-####-####-####

在这种情况下,Excel 会将最后一个数字更改为零。

原因

Excel 遵循有关如何存储和计算浮点数的 IEEE 754 规范。 因此,Excel 在数字中仅存储 15 个有效位数,并将第十五位后的数字更改为零

解决方法

添加引号

要防止将数字更改为零,请在输入数字之前键入一个单引号。

为此,请选择一个空白单元格,键入单引号 ('),然后输入数字。 所有数字都显示在单元格中。

键入单引号并输入数字。

设置单元格格式

为避免在每个受影响的单元格中键入引号,可以在输入任何数据之前将单元格格式设置为文本。

  1. 选择所有受影响的单元格,然后按 Ctrl+1 打开“设置单元格格式”对话框。

  2. 在“数字”选项卡上,从“类别”列表中选择“文本”,然后选择“确定”

    在“设置单元格格式”对话框的“数字”选项卡下选择“文本”。

更多信息

仅当单元格的格式设置为数字且输入的数字超过 15 位时,才会出现此行为。 对于格式设置为文本的单元格,最多可以键入 32,767 个字符。 Excel 在工作表上最多显示 1,024 个字符。

由于自定义数字格式主要用于处理数字,因此无法创建可存储超过 15 位数的自定义数字格式。 例如,不能使用以下格式将 16 个字符的信用卡 ID 存储为数字:

####-####-####-####

但是,如果在格式设置为文本的单元格中键入数字,则所有字符在键入时将保持不变,因为 Excel 将数字存储为文本而不是数字。

仍然需要帮助? 请转到 Microsoft 社区