如何解决在文本单元格中有逗号或引号的情况下将Excel导出为文本时,Excel会添加其他引号这个可以解决吗?
我在工作时有一份旧报告,需要进行一些更改。
作为报告的一部分,Excel电子表格的一张被导出为txt文件,如下所示:
Set wks = ActiveWorkbook.Worksheets("CSVHourlyData")
wks.Copy 'to a new workbook
Set newWks = ActiveSheet
Application.DisplayAlerts = False
With newWks
.SaveAs Filename:=sEnv & "\files_external\" & SFileNameCSV,FileFormat:=xlTextMSDOS
.Parent.Close Savechanges:=False
End With
Application.DisplayAlerts = True
请注意,工作表名称中包含CSV,但它不是实际的CSV文件。只是数字和文字。我们正在导出为xlTextMSDOS,而不是CSV文件。
在一个单元格中,我有这样的文字:
在2021年,“ XYZ”报告将更改
2021年之后的逗号会强制Excel在导出时用引号将行换行,并且字符串中的引号在导出时会被双引号引起来。因此,在导出的文件中看起来像这样:
“到2021年,““ XYZ””报告将更改”
在电子表格中看起来很完美。额外的转义仅发生在导出上。好像Excel认为这是CSV文件,而不是纯文本文件,并且它正在尝试转义定界符。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。