我编写了一个宏以将 Excel 工作表中的数据保存为 CSV 格式 - VBA 2010
一切完成后,我在宏的末尾只有 2 个问题。
1)在命令中ActiveWorkbook.SaveAs
,我使用了ConflictResolution:=xlLocalSessionChanges
保证覆盖文件的选项,如果存在于同名的同一文件夹中,此选项应该以安静模式覆盖现有文件,而不询问用户是否要覆盖现有文件。
它在以下语法中工作
ActiveWorkbook.SaveAs Filename:="C:\File1.xlsx", FileFormat:= _
xlOpenXMLWorkbook, CreateBackup:=False, ConflictResolution:=xlLocalSessionChanges
如果存在具有相同名称的文件,它会被覆盖但是这个选项不起作用,尽管它在以普通 Excel 格式保存文件时起作用,但在另存为 CSV 时不起作用。
但它不适用于以下语法
ActiveWorkbook.SaveAs Filename:="C:\File1.csv", FileFormat:= _
xlCSV, CreateBackup:=False, ConflictResolution:=xlLocalSessionChanges
我所说的“它不起作用”的意思是它没有覆盖现有文件,并且仍然显示存在同名文件的消息,并询问用户是否要覆盖它。
因为这是一个宏,所以我不想受到用户的任何干扰。
2) 当我在ActiveWorkbook.Close
将文件转换为 CSV 后使用命令关闭文件时,我收到消息“您是否要保存更改(是/否)。
我还想在没有此消息的情况下以安静模式保存文件。