将带引号的逗号中的CSV导入Excel


14

我有一个CSV文件,其中包含可以包含逗号的文本字段。将其导入Excel时,会将这些逗号作为字段分隔符。我在引号中使用该字段,并且我也尝试过使用双引号。有什么方法可以原样导入,还是应该将其转换为另一个定界符?


2
请向我们展示有问题的领域,否则答案将是黑暗中的随机刺伤。
让·弗朗索瓦·科贝特

Answers:


16

确保分隔的值之间没有空格,并将每个字段都用引号引起来:

"1, 2","3, 4"

将导入2个单元格-第一个具有“ 1、2”,第二个具有“ 3、4”


3
这帮了我大忙。在定界逗号之后和下一个引用值之前,我有空格。删除空格后,Excel会正确解析我的CSV文件。
dthrasher 2012年

4
如果分隔符之间的值中包含引号和逗号,该怎么办?我遇到了很多问题,并且值内的分隔字符和引号用第二个引号转义后没有空格。
anon58192932 '04

2
@ anon58192932有没有想过这个?我看到了完全相同的问题。
迈克尔

@迈克尔,我没有。我想象需要一种比string.split(“,”)更复杂的算法。您在遇到逗号时必须手动检查是否在引号内,并检查每个引号是否有第二个匹配的引号。
anon58192932'8-8-29

2
删除空格是关键。
亚伯兰

1

您如何导入?您是在功能区上使用数据导入功能还是通过VBA?因为当我使用功能区函数导入时,可以将文本限定符指定为“,并且它将导入” abc,123”,“ abc,123”,“ abc,123”作为abc,123 <next cell>abc,123 <next cell>abc,123。

如果该方法不起作用,并且您不必对数十个文件执行此操作,则可以查找和替换“,”(包括引号),并替换为“ ^ t”(包括引号)(^ (如果您执行查找并替换为Word,则为Tab的MS Word版本)。然后,您可以使用制表符分隔的文件...


0

根据上述Brad的回答,如果要导入海量文件(数百万行),则Word将在Notepad之前很长时间耗尽空间。在记事本中,您将使用布拉德原理,但只能替换为“ ^”。由于只能将单个字符指定为定界字段,因此在导入Excel时可以使用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.