将输出保存在新的excel文件中

我想保存我的最终输出表到一个新的excel文件,我已经创build了一个button来执行这个。

Set NewBook = Workbooks.Add Set ws = ThisWorkbook.Worksheets("Output") Do fName = Application.GetSaveAsFilename Loop Until fName <> False ws.Copy Before:=NewBook.Sheets(1) NewBook.SaveAs Filename:=fName & Excel.XlFileFormat.xlOpenXMLWorkbook NewBook.Close 

该代码将输出文件保存在Windowsshell或任何unkbown格式。 我怎样才能修改它以excel格式保存文件(没有macros),然后自动closures它? 谢谢。

 NewBook.SaveAs Filename:=fName & ".XLSX", FileFormat:=xlOpenXMLWorkbook 
  1. 你必须提供文件扩展名,Excel不会为你做。
  2. 您需要提供格式参数作为参数,而不是连接到string(由Sorceri指出)
  3. 您通过命名来指定第一个参数,所有后续参数都必须命名
  4. 您只需要指定枚举名称,而不是完整的对象path

您正在使用保存为错误

 NewBook.SaveAs fName, Excel.XlFileFormat.xlOpenXMLWorkbook