2

我正在尝试将.xlsx文件转换为.xls,它似乎工作正常,但是当我打开.xls文件时,我收到一条警告消息“

您尝试打开“文件名”的文件与文件扩展名指定的格式不同。

在打开文件之前,请确认文件没有损坏并且 > 来自受信任的来源。您现在要打开文件吗?”....

当我打开它时一切看起来都很好,但我不明白为什么会这样。我在这个程序中的下一步是将 xls 中的数据导入 SQL,但我担心这会导致问题。

这是我调用 SaveAs 方法来更改文件的文件扩展名的代码行。

wb.SaveAs("filename.xls", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook);

我最初只是

wb.SaveAs("filename.xls"); 

在我得到错误之后,我做了更多的挖掘并找到了xlOpenXMLWorkbook,但似乎没有帮助。

任何可以帮助我理解为什么会发生这种情况的信息将不胜感激。

4

1 回答 1

3

要保存为电子表格(OpenXml 格式,.xlsx),请使用XlFileFormat.xlOpenXMLWorkbook

wb.SaveAs("filename.xlsx", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlOpenXMLWorkbook);

要另存为 Excel 1997-2003 格式 (Biff, .xls),请使用XlFileFormat.xlExcel8

wb.SaveAs("filename.xls", FileFormat: Microsoft.Office.Interop.Excel.XlFileFormat.xlExcel8);

确保您设置了适当的扩展名(.xlsx 或 .xls),否则,您将遇到您描述的错误。

另请参阅我的答案Excel 互操作另存为在 excel 2007 中提供兼容性检查器

于 2013-09-06T23:54:24.873 回答