我正在使用OpenXML库创建一个Excel导出。我可以使用默认单元格引用(例如A1)设置单元格引用。
由于我希望动态填充跨列的数据,我想知道是否可以使用数值坐标引用,例如Cells [1,1]?
因此,我可以像这样做:
如果我强制指定col为“AA”,并将rowIndex设为递增,则可以正常工作,但这样会生成一个难以读取的Excel文件。我无法理解为什么会发生这种情况,因为我可以在代码中看到col被正确设置,但似乎有些地方出了问题。有人能帮忙解决这个问题或提供更好的解决方案吗?谢谢! Andy
由于我希望动态填充跨列的数据,我想知道是否可以使用数值坐标引用,例如Cells [1,1]?
因此,我可以像这样做:
Cell cell = InsertCellInWorksheet("A", 1, worksheet);
我希望能够实现以下内容:
Cell cell = InsertCellInWorksheet(columnIndex, rowIndex, worksheet);
我似乎找到了很多使用Excel网格引用(“A1”)的示例,但没有使用数值表示的内容。
非常感谢
更新
我已经找到了一种方法,可以通过这里的答案获取列标题,该答案基于数字索引计算列名。
这可以正确获取列,我可以逐步执行代码,并可以看到它在循环遍历Z、AA、AB等列。现在我发现,当迭代遍历列时,如果它构建超过Z列的任何内容,我会收到错误消息Excel found unreadable content in...Do you want to recover the contents of this workbook? If you trust the source of this workbook, click Yes.
这是设置单元格的代码:
int columnIndex = 1;
string col;
uint rowIndex = 60;
foreach (var item in _data)
{
col = ExcelHelper.GetColumnName(columnIndex);
ExcelHelper.SetCell(wsp, col, rowIndex, item.PeriodEnd.ToString("dd/MM/yyyy"), excelStylesheet.TableCell);
columnIndex++;
}
如果我强制指定col为“AA”,并将rowIndex设为递增,则可以正常工作,但这样会生成一个难以读取的Excel文件。我无法理解为什么会发生这种情况,因为我可以在代码中看到col被正确设置,但似乎有些地方出了问题。有人能帮忙解决这个问题或提供更好的解决方案吗?谢谢! Andy