2010-04-13 19:17:39 +0000 2010-04-13 19:17:39 +0000
93
93
Advertisement

如何强制excel引用CSV文件的所有列?

Advertisement

Excel只在某些字段周围加引号,如何强制excel保存CSV文件时,每列都加引号?

Advertisement
Advertisement

答案 (16)

46
46
46
2013-09-04 18:18:59 +0000

如果你在LibreOffice或OpenOffice中打开XLS文件,然后选择另存为………..并选择文本CSV,它允许生成一个CSV文件,其中也包括引号作为分隔符。例如….。"Smith", “Pete”, “Canada”, “Jones”, “Mary”, “England”

只需勾选 “引用所有文本单元格 "框:

为了也引用数字字段,请突出显示单元格范围,并在保存前将单元格格式改为 "text"。

45
45
45
2012-03-07 10:09:56 +0000

这个页面也有直接从马云口中得到的解决方案: http://support.microsoft.com/kb/291296/en-us

如果链接退化,搜索的主题是:

“在Excel中导出一个带逗号和引号的文本文件的步骤 "和/或 "Q291296”

tl;dr:使用他们的宏

19
Advertisement
19
19
2014-08-21 16:54:18 +0000
Advertisement

我找到了这个简单的解决方案:

1.突出显示你要添加引号的单元格。右键点击,然后转到: 格式化单元格→选项卡。Number → 类别。自定义 3. 将以下内容粘贴到 Type字段中: "''"@"''"(详见下文) 4. 点击 “okay”

你要粘贴的字符串是"''"@"''",它是双引号、单引号、单引号、双引号、双引号、@符号、双引号、单引号、单引号、单引号、双引号。

14
14
14
2018-01-24 23:10:25 +0000

如果你不懂powershell的话,在windows机器上搜索powershell.exe。

4
Advertisement
4
4
2016-09-30 15:54:56 +0000
Advertisement

突出显示你想添加引号的单元格。进入格式 -> 单元格 -> 单元格 -> 自定义复制/粘贴以下内容到 “类型 "字段。\”@\” 点击 "好的",庆幸自己没有用手去做。

发件人: [ http://www.lenashore.com/2012/04/how-to-add-quotes-to-your-cells-in-excel-automatically/ ]&003

4
4
4
2014-05-23 13:56:19 +0000

这对我来说是最简单的。我把电子表格导入到Access 2010中,然后从那里导出为一个文本文件。在我的字段周围给我提供了引号。现在我把步骤做下来后,42k行只需要不到一分钟的时间。

3
Advertisement
3
3
2014-07-09 15:12:51 +0000
Advertisement

我找到了另一个不涉及VBA宏的工作方法,但需要使用Notepad++或类似的宏文本编辑器。用文本",“(即字面意思是双引号、逗号、双引号)替换所有的 "tab "字符,然后用另一个宏在每行文本的前缀和后缀上双引号。

2
2
2
2016-10-21 06:33:38 +0000
  1. 突出显示你要添加引号的单元格。
  2. 右键单击并转到: 格式化单元格→选项卡。Number → 类别。自定义
  3. 将以下内容粘贴到 “类型 "字段中: "''"@"''"(详见下文)
  4. 将所有的' '(重复单引号)替换为"(双引号)
  5. 保存修改后的.csv文件
1
Advertisement
1
1
2016-07-23 02:51:20 +0000
Advertisement

如果你用记事本++在每行开头添加引号,只需打开导出的csv文件,将光标放在第1行第1列,然后点击菜单Edit/Column Editor…,在’文本插入‘字段中输入”**,那么每行的开头都会有一个引号,然后可以用正则表达式搜索/替换所有的制表符。

0
0
0
2016-05-30 12:31:35 +0000

导出逗号分隔和引号的字符串,只需要用Excel 2016和记事本就可以完成,使用复制数据、公式、导出、改变文件属性、在记事本中替换、保存导出的文件和清理。每一个步骤都很简单。具体内容是:

  1. 将要导出的列复制到一个新的中间表中,以保留原表,并作为备份,新的表以后再删除,使电子表格保持原样。

  2. 将不存在的字符,例如’#‘或’;-)‘,在字符串的每一列中,例如A列的每一列末尾都加上公式=concat("#",trim(A1),"#"),将公式放在另一列的所有行上。将新列复制回A…,使用'123'方法,这样就不会携带公式。

5.修改file.csv属性,使其可以用记事本打开。’

7.虽然使用 “作为任意字符似乎是合理的,但它必须放在不同的单元格中,例如’$A$50',然后在导出时出现的是’” “",显然又是一个不方便的触发器。

8.在记事本中,文件应该被保存,成为一个.txt文件导入,中间的.csv被删除。清理了多余的电子表格的任务完成了。

也许有一天Access导出工具可以嵌入到Excel中。在那些使用剪切和粘贴的程序中,一个更通用的方法是在粘贴选项中包含一个解释输出结构和提供分隔符的选择。

0
0
0
2016-02-24 18:11:30 +0000

另一个方法是,如果你有MS Access(我有2007版),导入文件,然后导出为文本文件。然后将.txt改成.csv。注意,所有的数字字段都不会有双引号,所以如果你也需要双引号,那么在Access中把数字字段改为文本字段。

0
0
0
2013-10-08 17:34:41 +0000

用Mircrosoft Works Spreadsheet 打开保存的文件 3. 3. “另存为 "电子表格为CSV 4. 所有非数字字段周围都有”

注意,这和键盘上的引号不一样,它有前向和后向的变化。

0
0
0
2015-02-03 15:47:16 +0000

我用下面的方法在Excel中取三列,然后在第四列中建立字符串。有时第二列是空的,但我需要确保它在最后的文本文件中被表示出来。

-1
-1
-1
2014-09-16 15:36:29 +0000

这是我的食谱。我讨厌这样做,但我没有更好的办法。在我的情况下,我没有得到任何字段周围的引号。我还需要使用UTF-8编码和;而不是制表符,所以我最后是这样做的。

注:由于用单引号等双引号包围双引号的合法性,我特意使用了 “键盘格式化 "来表示按键和字面字符和字符串。

1.在你的Excel电子表格中的任何一列之前插入一个新的列(点击第1列的标题,整个列被选中,右键点击,选择 "插入")。从新列中选择整个范围内的空单元格(它们默认被选中)。3.在公式字段上,插入你想要的任何内容:例如,xxx。按CTRL+Enter键将整个列填入相同的值。 3. 将文件保存为Unicode Text (*.txt). 4. 在记事本++中打开文件。 5.按CTRL+f键打开搜索/替换。 6.进入替换选项卡。 7.在 "搜索模式 "中选择 "扩展(\n, \r, \t, \0, \x…)"。在 "替换 "字段中,输入"(双引号)"。 10.按 "全部替换 "键。在 "搜索 "一栏中,输入"(双引号)"键。 12. 在 "替换 "一栏中,输入”;“(双引号、分号、双引号)。 13.按替换全部。按 "全部替换” 14. 就快完成了。对于最后一个双引号,在 “搜索 "栏中输入”\r",在 “替换 "栏中输入”\r"(双引号,反斜杠,双引号)。按 “全部替换"。 15. 只要不使用汉字等,就可以将编码改为UTF-8,安全保存文件。

-1
-1
-1
2019-08-19 22:22:08 +0000

以下是如何使用OpenOffice应用程序来获取Excel电子表格,并创建一个文本(csv)文件,每个文本字段周围都有引号。

打开复选框 “编辑过滤器设置”

点击 “保存”

选择 “保持当前格式”

字段分隔符应该是逗号。

文本分隔符应该是引号。"

勾选 “引用所有文本单元格”

点击 “确定”

这对我来说很有效!

-1
-1
-1
2016-04-06 18:58:41 +0000

我曾经多次遇到这个问题。下面是我想出的最简单的解决方案。

  1. 将文件保存为Excel
  2. 将Excel导入到一个Access表中
  3. 从Access中导出表格到文本文件中

Access将允许你指定导出的分隔符为逗号,并在文本字段中使用引号进行限定。在导出向导中,你可以指定任何你想要的字符串周围的分隔符或字符。

你可能需要创建一个Access查询来安排字段的特定顺序或隐藏Access添加的自动ID字段。如果你想看结果,在记事本中打开它。Excel会把csv的数据弄得一团糟…….. 我想如果我没记错的话,应该是字段中填充了前导零。

Advertisement

相关问题

6
13
9
10
14
Advertisement
Advertisement