C# ComExecption异常 HRESULT:0x800A03EC

在调用Excel的COM组件对已有的Excel进行写入操作的时候,报出了这个异常     
C# ComExecption异常 HRESULT:0x800A03EC
查找了很多资料,造成抛出这个异常的原因可能包括

1、Excel的行列都是从1开始的,如果我们习惯性的给worksheet.Cells[0, 0] 或者worksheet.Cells[1, 0]或者worksheet.Cells[0, 1]赋值,就会引发该异常。
2、当前目录操作权限,是否有授权。如果对于操作的Excel文件没有授权的话,比如说,权限不够,或者Read-Only一类的,也会抛出这个异常。

当我试过这两种方法后依然不能解决代码中的问题,我又看了一下代码,发现自己的代码有问 newRowsRange.Value2 = existedRowsList ,我把List直接赋值给Range了。所以,可以总结出来另外的一种情况导致抛出这种异常

3、把不符合要求的对象赋给Range. 比如说要给Excel的一个区域赋值,可以选中这个区域Range对象,然后把要写入的值放入到一个二维数组中,然后把这个数组赋给Range对象。如果把不符合要求的值,比如说List, 赋值,就会抛出这个异常
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值