将Excel导出为CSV,使用管道转换,而不更改列表分隔符设置

abithluo  于 2023-11-14  发布在  其他
关注(0)|答案(4)|浏览(175)

我需要将Excel文件导出为CSV导入到数据库中。我不能使用逗号,因为某些文本字段中有逗号。我尝试过的事情并不好用:

  • 将文本中的逗号改为句点。这可以工作,但不是很好。
  • 更改控制面板设置,并将“列表分隔符”设置更改为管道。这也有效,但之后我必须在Excel中的公式中使用管道,这并不是很好。

还有别的选择吗

55ooxyrt

55ooxyrt1#

使用逗号效果很好。从Excel导出到CSV时,文本中存在的逗号不被视为分隔符,因为它们被括在引号中。所有数据库导入实用程序现在都应该考虑到这一点。
如果文本中没有逗号:1,2,3,4,this is text
如果文本中有逗号:1,2,3,4,"this, is text"
CSV导入不会将逗号视为包含在文本中的分隔符。

qlckcl4x

qlckcl4x2#

您可以使用Excel的TEXTJOIN公式将所有列与特定的字符串(如管道)连接起来。
下面列的示例:


的数据
你可以使用下面的公式,上面每一行一个:
=TEXTJOIN(“|“、A1、B1、C1、D1)
=TEXTJOIN(“|“、A2、B2、C2、D2)
结果将是:



最后,您可以将此结果保存保存为文本文件。

dsekswqp

dsekswqp3#

您应该用引号将所有字段括起来:“value 1”,“value,2”,“value3”

qrjkbowd

qrjkbowd4#

在Excel中打开xls或xlsx文件,保存为.ods格式(这一步避免了一些问题)。关闭Excel并使用Libreoffice打开ods文件,并保存为csv。它将允许您指定分隔字符 * 和 * offer将所有字段括在引号中。


的数据

相关问题