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

xxslljrj  于 2022-12-05  发布在  其他
关注(0)|答案(6)|浏览(220)

我的CSV文件中有一列包含由逗号分隔的数字字符串。即使我希望将其视为文本,Excel仍不断将其转换为数字。
示例:

470,1680 get converted to 4,701,680

但是,我希望它保持为470,1680
我试图将单元格格式设置为文本,但这会删除原来的逗号。如何实现此操作?

ggazkfy8

ggazkfy81#

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

这难道不是想要的结果吗?

2g32fytz

2g32fytz2#

我发现,行之有效的方法是:

="12345678901349539725", "CSV value2", "Another value"

这里的关键是,该值是包含="{Number}"的字符串。Excel以某种方式遵守该模式。
也许它可以更好地写为

"="12345678901349539725""

但是不要在代码中使用引号。

kpbpu008

kpbpu0083#

如果你能操纵CVS文件,在每个数字前放'

vlju58qv

vlju58qv4#

好的......文件使用回车+换行符来描述新记录的开始。它还(出于我不明白的原因)在每个记录中的随机位置使用换行符a-但是没有回车。
为了解决这个问题,我用Notepad打开了这个文件,并使用“扩展”搜索模式进行了查找和替换。我用什么都不做替换了\n。现在,数据可以使用我以前推荐的解决方案在Excel中正确打开。
当然,您可以使用任何其他程序(不仅仅是Notepad
)来进行字符替换。这样做有帮助吗?

jucafojl

jucafojl5#

在DocNumber实际为文本的情况下尝试以下操作:选择(CHAR(10)+单据编号)AS单据编号
也就是说,通过添加一个不可见的文本字符,它可以欺骗Excel,使其成为一个文本字符串。

yfjy0ee7

yfjy0ee76#

这个问题是关于Excel千位分隔符的。我的快速解决方案很简单,对我很有效。
1.转到Excel--〉文件--〉选项--〉高级
1.找到“千位分隔符”。您的分隔符可能是“,"。
1.更改分隔符,如“x”等。
完成后,我建议将分隔符切换为“,”。

相关问题