我目前在使用Microsoft.Office.Interlope将DataTable导出到Excel时出现问题。
出现的错误是“winform其他信息:正在检索 具有CLSID的组件的COM类工厂 {00024500-0000-0000-C000-000000000046}由于以下原因而失败 错误:80080005服务器执行失败(来自HRESULT的异常: 0x80080005(CO_E_SERVER_EXEC_FAILURE))。“
我已经用Google搜索并尝试了我能找到的所有解决方案,其中大多数是在组件服务中更改“Microsoft Excel应用程序”的DCOM安全权限。
excel上的错误会生成“无法使用对象链接”
这是我目前正在使用的代码
try {
DataTable table = new DataTable();
table = dataset(table);
Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();
excelApp.Visible = false;
excelApp.DisplayAlerts = false;
Microsoft.Office.Interop.Excel.Workbook excelWorkBook = excelApp.Workbooks.Add(Type.Missing);
Microsoft.Office.Interop.Excel.Worksheet excelWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)excelWorkBook.ActiveSheet;
excelWorkSheet.Name = table.TableName;
excelWorkSheet.Cells[1, 1] = "Sample test data";
excelWorkSheet.Cells[1, 2] = "Date : " + DateTime.Now.ToShortDateString();
excelWorkBook.SaveAs(@"C:/testfolder/test.xlsx");
excelWorkBook.Close();
excelApp.Quit();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
是否有人熟悉导出到Excel?您是否遇到过此错误并且有更好的方法吗?