Excel将我的数字变成 float

标签 excel datagrid formatting floating-point export

我有一些 ASP.NET 代码将数据网格中的数据导出到 Excel 中,但我注意到它在导出时会弄乱特定字段。

例如。我在数据网格的一列中有类似 89234010000725515875 的值,但是在导出时,它变成了 89234+19。

是否有任何 Excel 格式可以恢复我的原始号码?谢谢。

最佳答案

Excel 并没有真正搞砸这个领域。有两件事正在发生:

  • Excel 以科学计数法格式化大量数字。所以“89234010000725515875”变为“8.9234E+19”或“8.9234 x 10 ^ 19”。
  • 数字“89234010000725515875”的大小超过了 Excel 用于存储值的精度。 Excel 将您的号码存储为“89234010000725500000”,因此您丢失了最后五位数字。

  • 根据您的需要,您可以做两件事之一。

    您的第一个选择是将格式从“常规”更改为“0”(小数点为零的数字。)这将为您提供“89234010000725500000”,因此您将失去精度,但您将能够对数字执行计算。

    第二个选项是将单元格格式化为文本“@”或在行首粘贴带有撇号的字段以强制值为文本。您将获得所有数字,但无法计算该值。

    我希望这有帮助。

    关于Excel将我的数字变成 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2443765/

    相关文章:

    excel - 用户窗体列表框宽度自动更改

    WPF MVVM DataGridColumnHeader DisplayName

    xml - 如何在 Go 中将自定义格式化时间序列化到 xml 或从 xml 序列化?

    asp.net - 从 ASP.NET 导出到 Excel 会产生无法使用 Excel Viewer 读取的文件

    excel - vba搜索替换字符

    excel - 如何在行数据更改时压缩excel中的列数据

    c# - Datagrid 更改单元格值(如果是默认值(日期时间))

    WPF 工具包 : how to scroll datagrid to show selected item from code behind?

    java - 在 JSP 或 JVM 中设置区域设置无法正确格式化数字

    java - 如何让输出显示尾随零?