【发布时间】:2015-01-20 02:58:39
【问题描述】:
我正在使用以下宏将 xls 文件转换为 xlsx。它的问题在于SaveAs 的行。这将创建第二个文件,一个带有原始 xls 扩展名,第二个带有 xlsx 扩展名。如果我只是说“保存”,我会收到错误消息。如何删除 xls 文件或让宏执行 Save 而不是 SaveAs?我们需要转换文件的原因是,当我们通过电子邮件发送文件时,它的大小会更小。
Dim s As String
s = ActiveWorkbook.FullName
s = Replace(s, "xls", "xlsx")
ActiveWorkbook.SaveAs Filename:=s, _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
【问题讨论】:
-
这里有两个独立的操作——创建一个新文件(xlsx 格式)和删除一个旧文件。真的没有办法解决这个问题。听起来你已经完成了第一个任务。这是与第二个相关的一些答案:stackoverflow.com/questions/67835/deleting-a-file-in-vba