我在winform中使用Microsoft.Office.Interop.Excel,我正在读取一个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”是我的DataTable。嵌套的for循环不会抛出运行时错误,但后面的代码会抛出。错误只是说:COM异常未处理,来自HRESULT的异常:0x800A03EC。
感谢任何建议。
问候。
答案 0 :(得分:8)
Cells[]
是基于1的,而不是从零开始的。