CSV 文件中的数字格式

Posted

技术标签:

【中文标题】CSV 文件中的数字格式【英文标题】:Number format in CSV file 【发布时间】:2015-06-11 09:42:58 【问题描述】:

我有一个宏,可以将数据从 SQL 数据库导入到 excel 中,然后将结果保存为 CSV 文件。当它保存到 CSV 时,其中两列的格式会丢失,导致数字显示不正确。

第 1 列包含 12 位数字,例如“800000000000”,在 CSV 文件中显示为“8E+11”

第 2 列包含 10 位数字,例如“4880000000”,在 CSV 文件中显示为“4.88E+09”

数据在首次导入 excel 时显示正常,保存到 CSV 时出现问题,尽管当我在 CSV 文件中展开第 2 列时,它会显示完整数字。这对第 1 列不起作用,我必须更改单元格的格式。

我通常会运行宏然后将创建的 CSV 文件发送给同事,有没有一种方法可以保持数字格式而无需打开和编辑 CSV 文件?

谢谢

【问题讨论】:

您可以 a) 将数字作为文本输入或 b) 加宽列并将单元格的格式设置为 0;@ 【参考方案1】:

在引号前添加“=”可以保留模式 例如,如果您的 csv 文件是这样的

A1,col1,col2,col3,="001"

在excel中打开时第5列还是001

【讨论】:

以上是关于CSV 文件中的数字格式的主要内容,如果未能解决你的问题,请参考以下文章

Excel 错误地读取了 csv 中的科学格式数字

关于excel另存为csv文件数字的问题?

如何以 dd/mm/yyyy hh:mm 格式从 CSV 导入日期到 R 中的通用数字字符串

打开CSV格式文件时的数字自动转换和乱码问题~~~~急

关于excel保存为csv格式后,重新打开文本型数字变为科学计数,且15位后面变成0??

Powershell 中的 Excel 到 .csv 不断更改日期和长数字的格式