C# 将数据表导出到excel C时出错#
我目前在使用Microsoft.Office.Interlope将数据表导出到Excel时遇到问题 出现的错误是“winform附加信息:检索” 具有CLSID的组件的COM类工厂 {00024500-0000-0000-C000-0000000000 46}由于以下原因失败 错误:80080005服务器执行失败(HRESULT异常: 0x80080005(协同服务器执行失败)。” 我在谷歌上搜索了一下,尝试了我能找到的所有解决方案,其中大部分是更改组件服务中“Microsoft Excel应用程序”的DCOM安全权限 excel上的错误生成“无法使用对象链接” 这是我目前正在使用的代码C# 将数据表导出到excel C时出错#,c#,excel,winforms,com,office-interop,C#,Excel,Winforms,Com,Office Interop,我目前在使用Microsoft.Office.Interlope将数据表导出到Excel时遇到问题 出现的错误是“winform附加信息:检索” 具有CLSID的组件的COM类工厂 {00024500-0000-0000-C000-0000000000 46}由于以下原因失败 错误:80080005服务器执行失败(HRESULT异常: 0x80080005(协同服务器执行失败)。” 我在谷歌上搜索了一下,尝试了我能找到的所有解决方案,其中大部分是更改组件服务中“Microsoft 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吗?您是否遇到过此错误?是否有更好的方法来执行此操作?是使用Microsoft.Office.Interop创建Excel电子表格的良好开源替代方案。
因此,post为您提供了一些关于如何使用NPOI完成此操作的示例代码。备选方案-以CSV格式直接从数据库导出数据并在excel中打开。