将.xls转换为.xlsx的代码

我在网上find了这个代码片段,将我的.xls文件转换成.xlsx文件。

 Sub ProcessFiles() Dim Filename, Pathname, SaveFileName As String Dim wb As Workbook Pathname = "C:\Users\user\Desktop\test\" Filename = Dir(Pathname & "*.xls") Application.DisplayAlerts = True Do While Filename <> "" Set wb = Workbooks.Open(Pathname & Filename) wb.CheckCompatibility = True saveFileName = Replace(Filename, ".xls", ".xlsx") wb.SaveAs Filename:=saveFileName wb.Close SaveChanges:=True Filename = Dir() Loop Application.DisplayAlerts = True End Sub 

当我运行它时,它确实创build了备份,但是当保存文件时,它会显示test.xls文件夹中已经存在的消息,但我希望它被保存为.xlsx,如replacefunction。

代码有什么问题?

更换

 wb.SaveAs Filename:=saveFileName 

 wb.SaveAs Filename:=saveFileName, FileFormat:=xlOpenXMLWorkbook 

并更换

 wb.Close SaveChanges:=True 

 wb.Close SaveChanges:=False