【发布时间】:2012-01-22 02:01:32
【问题描述】:
获取 com 异常,不确定是由于特定列中的特殊字符还是特定列中的数据量大。
我们目前得到的错误是:
System.Runtime.InteropServices.COMException (0x800A03EC)
- Excel 版本为 2003
- 24 列
- 20000 行
- 很多特殊字符大约20个左右
- 源代码是VB
有一两个这样的列。我们最近从.Net 1.1 迁移到.Net 3.5。 它在 .Net 1.1 中运行良好。如果删除了具有特殊字符的特定列,则它可以正常工作。
我们正在使用的代码
intRows = parr_objReportsData(intLoopCounter).dtblData.Rows.Count
intColumns = parr_objReportsData(intLoopCounter).dtblData.Columns.Count
ReDim arr_strData(intRows - 1, intColumns - 1)
For i = 0 To intRows - 1
For j = 0 To intColumns - 1
arr_strData(i, j) = parr_objReportsData(intLoopCounter).dtblData.Rows(i).Item(j).ToString
Next
Next
objExcel.ActiveWorkbook.Worksheets(parr_objReportsData(intLoopCounter).strDataSheet).Activate()
objExcel.ActiveWorkbook.Worksheets(parr_objReportsData(intLoopCounter).strDataSheet).Range("A" & parr_objReportsData(intLoopCounter).intStartingRow & ":" & strRange & (intRows - 1 + parr_objReportsData(intLoopCounter).intStartingRow)).value = arr_strData
objExcel.DisplayAlerts = False
objExcel.ActiveWorkbook.SaveCopyAs(strDocsPath & strFileName)
【问题讨论】:
-
什么excel版本,多少列,怎么“巨大”,什么“特殊字符”,哪个com-exception,什么源码???
-
Excel版本是2003,24列,20000行,很多特殊字符20个左右源代码是VB。有一两个这样的列。我们最近从 .Net 1.1 迁移到 .Net 3.5。它在 .Net 1.1 中运行良好。我们当前遇到的错误是 System.Runtime.InteropServices.COMException (0x800A03EC)。如果删除了具有特殊字符的特定列,则它可以正常工作。
-
请帮忙。很抱歉这个问题含糊不清。
-
您应该编辑您的问题以添加新信息,而不是评论(我已经整理好了)。但是您还应该显示生成 excel 并将其写入响应的 VB.NET 代码。查看导致此错误的列的一些示例数据也会有所帮助。
-
我已经添加了 VB.NET 代码。请检查并提供帮助。
标签: asp.net .net-3.5 excel-2003