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

停止Excel将字符串转换为数字,excel,csv,navicat,Excel,Csv,Navicat,我的CSV文件中有一列,其中包含由逗号分隔的数字字符串。Excel一直将它们转换为数字,即使我想将其视为文本 例如: 470,1680 get converted to 4,701,680 但是,我希望它保持为4701680 我试图将单元格格式化为文本,但这删除了原始的逗号。如何实现这一点?如果您可以操作CVS文件,将其放在每个数字前面将.CSV文件重命名为.TXT文件。用Excel打开文件,弹出文本导入向导。告诉Excel它是一个带分隔符的文件,逗号是分隔符。Excel将为您提供一个屏幕,允

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

例如:

470,1680 get converted to 4,701,680
但是,我希望它保持为4701680


我试图将单元格格式化为文本,但这删除了原始的逗号。如何实现这一点?

如果您可以操作CVS文件,将其放在每个数字前面

将.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

这不是期望的结果吗?

好的。。。因此,该文件使用回车符+换行符来描绘新记录的开头。它还(出于我不理解的原因)在每条记录中的任意位置都有换行字符,但没有回车符

为了解决这个问题,我用Notepad++打开了文件,并用“扩展”搜索模式进行了查找和替换。我将
\n
替换为零。现在,使用我先前推荐的解决方案,可以在Excel中正确打开数据


当然,您可以使用任何其他程序(不仅仅是记事本++)来进行此字符替换。这有用吗?

我发现有效的方法是:

="12345678901349539725", "CSV value2", "Another value"
这里的关键是这个值是一个字符串,包含
=“{Number}”
。不知何故,Excel尊重这种模式

也许它可以写得更好

"="12345678901349539725"" 

但是不要因为代码中的引号而发疯。

你还有原始的CSV文件吗?@Jerry Yes在正确显示的源代码中。只是在查看时没有。你能给我们一个完整的样本行或两个从您的CSV?可能重复的是,这是如何转换它。但是,如果你看源代码,它的格式不同。是的,我有。是的,它起作用了。说实话,我只是用这个值做的。一切都很好,不过不管用,谢谢。列没有正确对齐。什么不正常?我只是在工作时在我的机器上做的。如果可以的话,我很乐意帮忙。显然不是。。。这将产生5列,因为Excel不知道哪些逗号是“实”分隔符,哪些不是。但这超出了OP的问题范围。似乎你的想法可行,但我无法正确对齐列。