使用Interop Excel保存XLS

Oni*_*ght 7 c# vb.net excel office-interop excel-interop

当前设置:

因此,我可以使用以下代码将文件另存为XLS:

_myWorkbook.SaveAs("FileName.xls", Excel.XlFileFormat.xlWorkbookNormal)
Run Code Online (Sandbox Code Playgroud)

我还可以使用以下代码将文件另存为XLSX(因为我使用的是Office 2010):

_myWorkbook.SaveAs("FileName.xlsx", Excel.XlFileFormat.xlWorkbookDefault)
Run Code Online (Sandbox Code Playgroud)

问题:

我已尝试(未成功)使用以下代码将文件另存为XLSX:

_myWorkbook.SaveAs("FileName.xlsx", Excel.XlFileFormat.xlExcel12)
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?最后我查了一下,Excel 12是Excel 2007(支持XLSX的版本).我错过了什么吗?

(对于那些感兴趣的人,我收到This extension can not be used with the selected file type错误)

Pet*_*lin 17

实际上XlFileFormat.xlExcel12是Excel 12.0二进制格式(xlsb),对于OpenXML(即xlsx)你需要使用XlFileFormat.xlOpenXMLWorkbook枚举值.

有关完整参考,请参见此处.