2 u013389985 u013389985 于 2015.06.05 18:35 提问

将datagridview的数据导出为excel时出现异常
c#

“System.InvalidCastException”类型的未经处理的异常在 FaceTest.exe 中发生

其他信息: 无法将类型为“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel._Application”。此操作失败的原因是对 IID 为“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。

我用的是vs2013,office2013,添加的引用库为vs2013自带的Microsoft Office 15.0 Object Library,看网上有人说这是版本问题?有办法解决吗?

3个回答

guwei4037
guwei4037   Ds   Rxr 2015.06.06 06:44
已采纳

使用npoi完美导出excel,有现成的代码可以直接使用。
http://blog.csdn.net/chinacsharper/article/details/12999435

bdmh
bdmh   Ds   Rxr 2015.06.05 19:23

应该是同名的方法或类,你要指明命名空间,我遇到过

u013389985
u013389985 如果有这种问题应该是编译时不允许通过。我在刚导入Microsoft.Office.Interop.Excel的时候就报错了,包括button控件等都需要指明命名空间。现在就是修改过之后可以运行,但是调用这部分功能时会产生异常中断
2 年多之前 回复
datou431
datou431   Rxr 2015.06.10 15:24

我觉得vs自带的excel组建挺好的、

Csdn user default icon
上传中...
上传图片
插入图片