停止Excel将字符串转换为数字

时间:2014-01-03 17:06:13

标签: excel csv navicat

我的CSV文件中有一列包含以逗号分隔的数字字符串。 Excel会将它们转换为数字,即使我想将其视为文本。

示例:

470,1680 get converted to 4,701,680

但是,我希望它保持为470,1680

我尝试将单元格格式化为文本但删除了原始逗号。我怎样才能做到这一点?

4 个答案:

答案 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 ++)来进行此字符替换。这有帮助吗?