C#COM互操作:写入Excel工作表单元格

我正在使用Microsoft.Office.Interop.Excel在一个WinForm中,我正在阅读一个Excel文件,处理数据,并输出一个新的Excel文件。 不过,我无法写入单元格 – 专门添加列标题。 代码如下:

Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application(); Workbook wb = xlApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet); Worksheet ws = (Worksheet)wb.Worksheets[1]; for (int i = 0; i < dt.Columns.Count; i++) { for (int j = 0; j < dt.Rows.Count; j++) { ws.Cells[j + 1, i] = dt.Rows[j][i].ToString(); } } ws.Cells[0, 0] = "Ticket Number"; ws.Cells[0, 1] = "Transit"; ws.Cells[0, 2] = "Outage Start Date"; ws.Cells[0, 3] = "Outage End Date"; ws.Cells[0, 4] = "Business Impact"; wb.Worksheets.Add(ws); 

“dt”是我的数据表。 嵌套的for循环不会抛出运行时错误,但它后面的代码。 错误只是说:COMexception未处理,从HRESULTexception:0x800A03EC。

任何意见表示赞赏。

问候。

Cells[]是基于1的,而不是从零开始的。