【问题标题】:How to make Excel strip ALL quotes from CSV text fields如何使 Excel 从 CSV 文本字段中去除所有引号
【发布时间】:2011-02-14 09:26:12
【问题描述】:

在将 CSV 文件导入 Excel 时,它只会从该行的 FIRST 字段中去除双引号,而将它们保留在所有其他字段中。如何强制 Excel 去除所有字符串中的引号?

例如,我有一个 CSV 文件:

“文本 1”、“文本 2”、“数字 1”、“数字 2”

"abc", "def", 123, 456

"abc", "def", 123, 456

"abc", "def", 123, 456

"abc", "def", 123, 456

我使用“数据”>“导入外部数据”>“导入数据”将其导入 Excel。我指定字段用逗号分隔,并且文本分隔符是双引号字符。

数据预览和实际的 Excel 电子表格列都只从第一个文本字段中去除双引号。所有其他文本字段仍然有引号。真正奇怪的是 Access 能够正确导入这些数据(即从每个文本字段中去除引号。

请注意,这不是内部逗号、引号或转义字符的问题。

这发生在 Excel 2003 和 Excel 2007 中。

【问题讨论】:

  • 逗号后面有空格吗?如您的问题所定义。如果是这样,Excel 通常会对此感到窒息,并且可以做一些有趣的事情
  • 如果我可以将此标记为答案,我会的。

标签: text import excel-2007 excel-2003


【解决方案1】:

从要导入的文档中删除逗号之前/之后的所有空格。

【讨论】:

  • 是的。删除逗号完全修复了它。现在我的问题是;为什么空格后面的逗号会有所不同?以及为什么 Access 会按预期导入数据?
  • @Klay,我认为这与此有关(来自en.wikipedia.org/wiki/Comma-separated_values):在某些 CSV 实现中,与逗号相邻的前导和尾随空格或制表符被修剪。这种做法是有争议的,实际上是 RFC 4180 明确禁止的,它指出,“空格被认为是字段的一部分,不应被忽略。”...所以,当您在引号前放置空格时,您的字段在技术上没有被引号包围,它被一个空格和一个结束引号包围。
  • 太棒了!这很令人沮丧。
猜你喜欢
  • 2018-10-25
  • 1970-01-01
  • 2020-06-25
  • 1970-01-01
  • 1970-01-01
  • 2017-04-21
  • 2012-02-06
  • 2021-08-16
  • 2013-07-25
相关资源
最近更新 更多