我创建了一个工具来转换Excel文件。当用户转换一个excel文件时,代码先创建一个Excel文件。当我在我的系统(Excel2007)上工作时,它没有任何问题。当我在使用Excel98的系统上安装该程序时,它抛出了一个异常。我得到的第一个异常是另一个异常,但也是一个HResult错误。我通过将"SaveAs“改为"SaveCopyAs”修复了这个问题。然后它就被修复了!也适用于其他安装了Excel98的系统,但现在我遇到了另一个HResult错误。这里的问题是什么:
_savePath = sfd.FileName;
MessageBox.Show("GOOD1");
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
MessageBox.Show("GOOD2");
// The exception is here on the workbook
// HResult 8x00010105 (COMException)
Microsoft.Office.Interop.Excel.Workbook workbook = excelApp.Workbooks.Add(Missing.Value);
MessageBox.Show("GOOD3");
workbook.SaveCopyAs(_savePath);
MessageBox.Show("GOOD4");
lblSavePath.Text = _savePath;
workbook.Close(false, _savePath, Type.Missing);
excelApp.Quit();我希望有人能帮我解决这个问题。
谢谢,
杰米
发布于 2013-09-20 01:50:20
也许可以在没有excelApp.Quit();行的情况下尝试您的代码。
仅当您不打算再次使用excelApp对象时,才使用excelApp.Quit();函数。
https://stackoverflow.com/questions/17060266
复制相似问题