<分区>
我有很多 XLSX 文件,我需要在文件的最后一个文件之后追加一个新行。我正在使用 OpenXML,到目前为止我知道如何打开/创建电子表格,但我搜索向现有文件添加新行时没有返回任何结果。有什么想法吗?
<分区>
我有很多 XLSX 文件,我需要在文件的最后一个文件之后追加一个新行。我正在使用 OpenXML,到目前为止我知道如何打开/创建电子表格,但我搜索向现有文件添加新行时没有返回任何结果。有什么想法吗?
最佳答案
如果您需要做的只是在末尾添加一个空白行,并且您不关心行索引中是否已经存在一行,那么以下内容应该适合您:
public static void InsertRow(WorksheetPart worksheetPart)
{
SheetData sheetData = worksheetPart.Worksheet.GetFirstChild<SheetData>();
Row lastRow = sheetData.Elements<Row>().LastOrDefault();
if (lastRow != null)
{
sheetData.InsertAfter(new Row() { RowIndex = (lastRow.RowIndex + 1) }, lastRow);
}
else
{
sheetData.Insert(new Row() { RowIndex = 0 });
}
}
对于 OpenXML SDK 2.5 (Runtime) v4.0.30319 没有 Insert
方法,因此使用 InsertAt
如下:
...
}
else
{
sheetData.InsertAt(new Row() { RowIndex = 0 }, 0);
}
}
关于c# - OpenXML 向现有 Excel 文件添加新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6665307/