我在 csv 中有一列 15 位数字,值为 1234567812345678,但它总是将最后一位数字转换为零 1234567812345670。我已将它们格式化为数字。
答案1
正如阿德莱德爵士所回答的,Excel 仅支持最多 15 位数字的精度。但您仍然可以使用还有很多如果将其存储为文本,则为数字。
当您直接在 Excel 中打开 CSV 文件时,Excel 会自动将数字转换为数字格式,从而导致截断。使用以下方法Get External Data
可以绕过此问题:
在新的 Excel 文件中,转到Data
选项卡,然后单击From Text
部分Get External Data
。导航到您的 CSV 文件并点击Open
。
现在选择Delimited
,检查My data has headers
是否如此,点击Next
。
在下一个屏幕上,假设分隔符是逗号,因为它是 CSV,请确保仅Comma
选中并点击Next
Data Preview
这是关键的一步:选择包含长数字的部分中的列并选择Text
:
然后只需点击Finish
,选择您想要放置数据的位置,就完成了!
答案2
您已达到 Excel 可以处理的最大精度(15 位数字)。请参阅
了解更多详情。
答案3
Excel 将您的数字视为数字,只需将这个长数字括在双引号中(例如:“1234567812345678”),它将被视为文本,因此您可以保留更长的信用卡号码,以便将来可能出现。
例子:
name,card_number,expiration_date
John,"1234567812345678","2017-03-03"
另一种欺骗 Excel 的方法是将卡号用破折号分隔,例如 1234-5678-1234-5678,Excel 也会将其视为文本