1

当我执行 SAVEAS 时,以下代码示例会产生相同的错误:

Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
filePath = (string.Format("{0}.{1}", Path.GetTempFileName(), "xls"));

...对工作簿做一些事情...

excelApp.DisplayAlerts = false;
excelApp.ActiveWorkbook.SaveAs(filePath)

或者

Missing m = Missing.Value;
excelApp.ActiveWorkbook.SaveAs(filePath, m, m,m,m,m, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, m,m,m);

或者

excelApp.ActiveWorkbook.SaveAs(filePath, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value);

这是错误:异常:System.Runtime.InteropServices.COMException(0x800A03EC):来自 HRESULT 的异常:Microsoft.Office.Interop.Excel.WorkbookClass.SaveAs 的 0x800A03EC(对象文件名,对象文件格式,对象密码,对象 WriteResPassword,对象 ReadOnlyRecommended, Common.CreateTempExcelFile(DataTable 数据)中的对象 CreateBackup、XlSaveAsAccessMode AccessMode、对象 ConflictResolution、对象 AddToMru、对象 TextCodepage、对象 TextVisualLayout、对象本地

我在服务器上有 Office 2003 互操作,但已升级到 2007。没有区别。

顺便说一句,我可以将文本文件写入相同的文件/路径,因此这不是文件夹的权限错误。

提前致谢,

吉姆

4

1 回答 1

-1

看起来安装了无效的互操作版本的 Excel。

于 2010-11-18T09:32:31.133 回答