我的CSV文件中有一列包含以逗号分隔的数字字符串。 Excel会将它们转换为数字,即使我想将其视为文本。
示例:
470,1680 get converted to 4,701,680
但是,我希望它保持为470,1680
我尝试将单元格格式化为文本但删除了原始逗号。我怎样才能做到这一点?
答案 0 :(得分:5)
将.CSV文件重命名为.TXT文件。使用Excel打开文件,将弹出文本导入向导。告诉Excel它是一个分隔文件,逗号是分隔符。然后,Excel将为您提供一个屏幕,允许您为每列分配格式。选择相关列的文本格式。导入,你就完成了!
为了测试这个,我创建了以下.CSV文件:
test1,"470,1680",does it work
test2,"120,3204",i don't know
直接在Excel中打开CSV时,我会收到以下信息:
test1 4,701,680 does it work
test2 1,203,204 i don't know
使用我的方法打开时,我得到了这个:
test1 470,1680 does it work
test2 120,3204 i don't know
这不是理想的结果吗?
答案 1 :(得分:2)
如果你可以操纵CVS文件'放在每个数字前面
答案 2 :(得分:2)
我发现有效的是:
'ABC123','5','4'
'XYZ789','4','2'
'DEF456','2','1'
这里的关键是这个值是一个包含="12345678901349539725", "CSV value2", "Another value"
的字符串。不知何故,Excel尊重这种模式。
也许它可以更好地写成
="{Number}"
但请不要对代码中的引号发疯。
答案 3 :(得分:0)
好的......所以,文件使用回车符+换行符来描绘新记录的开头。它(由于我不明白的原因)在每个记录中的随机位置都有换行符 - 但没有回车符。
要解决此问题,我使用Notepad ++打开文件,并使用“扩展”搜索模式进行查找和替换。我没有替换\n
。现在,使用我之前推荐的解决方案,可以在Excel中正确打开数据。
当然,您可以使用任何其他程序(而不仅仅是Notepad ++)来进行此字符替换。这有帮助吗?