将数据表的行附加到 Excel,并在 C# 上跳过 Excel 上的某些列

Append Rows of Datatable to Excel with Skip Some Columns on Excel on C#

我的 excel 模板在数据表中有一对一的数据。 (列名相同。)我会将此数据表中的数据准确打印到 excel 模板,但我想跳过某些列,例如 Column2。 (我有5000行数据,我不想破坏Excel模板。)等待ClosedXml Save操作太久,我无法解决原因。如果你能帮上忙,我会很高兴。

Example Table

My Code on Gist

构建您自己的匿名对象 IEnumerable,并使用 worksheet.FirstCell().InsertData() 方法将整个可枚举对象转储到工作表中。

我没有测试过,但是代码应该是这样的:

var data = dtData.Rows
    .Cast<DataRow>()
    .Select(r => new { Column1 = r["Column1"], Column2 = r["Column2"] })
    .ToList();

worksheet.FirstCell().InsertData(data);