在 Excel 中添加超过 15 位数字

use*_*921 13 microsoft-excel-2003 microsoft-excel

我想在 Excel 单元格中添加 20 多个数字。

单元格的当前格式是通用的,它将数字转换为指数格式。我尝试使用数字格式和会计,但是当我输入超过 15 位数字时,它会转换为 0。

在一般格式下,阻止 Excel 将数据转换为 20 位指数格式的推荐步骤是什么?

示例:12345678901234567890

Excel 将其转换为1.23457E+19一般格式。

'在值之前不使用,有没有其他方法可以保持值不变?

Mik*_*ick 13

如果列太窄,某些数字会以指数格式显示,您可以通过增加列的宽度来解决此问题。

但是,Excel 中非常大的数字以浮点格式存储,无法在 Excel 中精确表示。您可以使用单元格格式覆盖它们的显示,但仍将使用浮点算法存储和处理真实值,具有其固有的局限性。

如果您需要以更高的精度执行计算,您需要一个支持任意精度算术的应用程序。


小智 7

当您不需要使用这些数字进行计算时,您可以将它们视为文本,请参阅其他答案。当您需要使用它们进行计算时,就会变得很困难,因为 Excel 只有 15 个重要数字。我知道的可能性是:

  1. 将数字拆分为 2 个(或更多)单元格。将数字的一部分放在一个单元格中,将其余部分放在另一个单元格中。结果是您需要开发自己的计算公式。

  2. 另一种解决方案是使用加载项。免费研究http://www.excel-ticker.com/calculation-of-very-large-numbers-in-excel-part-5-add-in/ 中提到的文章


chr*_*sen 5

原因是可以存储在浮点变量中的精度有限。要获得完整的解释,您应该阅读David Goldberg 在 1991 年 3 月出版的 Computing Surveys 上发表的论文“ What Every Computer Scientist Should Know About Floating-Point Arithmetic ”。

另一个更容易访问的站点是Chip Pearson 的站点

在Excel中,浮点型是Double其为IEEE 64位(8字节)的浮点数。这些可以显示 15 位精度(很好,请参阅 MSDN 文章Excel 工作表和表达式评估)。