ClosedXML - 添加新行而不覆盖数据(第一行)
ClosedXML - Add a new row without overwrite data (first line)
我试图在填充我的 excel 文档之前添加一个空行。
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
using (XLWorkbook wb = new XLWorkbook())
{
var ws = wb.Worksheets.Add(dt, "Report");
var listOfStrings = new List<String>();
ws.Cell(1, 6).Value = "Service";
ws.Cell(1, 15).Value = "Invoice";
ws.Range("A1:L1").Style.Fill.BackgroundColor = XLColor.DarkBlue;
ws.Range("M1:Q1").Style.Fill.BackgroundColor = XLColor.DarkCandyAppleRed;
ws.Range("M2:Q2").Style.Fill.BackgroundColor = XLColor.Red;
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename=Report.xlsx");
using (MemoryStream MyMemoryStream = new MemoryStream())
{
wb.SaveAs(MyMemoryStream);
MyMemoryStream.WriteTo(Response.OutputStream);
Response.Flush();
Response.End();
}
}
}
我只需要让第一行为空,然后用我的数据填充文档。
但我一直在覆盖文档。
要在工作表第一行上方插入一行,请使用:
ws.Row(1).InsertRowsAbove(1);
// ^ number of rows to insert
还有一种方法InsertRowsBelow()
可以在某行下方插入新行。有关更多示例,请参阅 documentation。
我试图在填充我的 excel 文档之前添加一个空行。
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
using (XLWorkbook wb = new XLWorkbook())
{
var ws = wb.Worksheets.Add(dt, "Report");
var listOfStrings = new List<String>();
ws.Cell(1, 6).Value = "Service";
ws.Cell(1, 15).Value = "Invoice";
ws.Range("A1:L1").Style.Fill.BackgroundColor = XLColor.DarkBlue;
ws.Range("M1:Q1").Style.Fill.BackgroundColor = XLColor.DarkCandyAppleRed;
ws.Range("M2:Q2").Style.Fill.BackgroundColor = XLColor.Red;
Response.Clear();
Response.Buffer = true;
Response.Charset = "";
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment;filename=Report.xlsx");
using (MemoryStream MyMemoryStream = new MemoryStream())
{
wb.SaveAs(MyMemoryStream);
MyMemoryStream.WriteTo(Response.OutputStream);
Response.Flush();
Response.End();
}
}
}
我只需要让第一行为空,然后用我的数据填充文档。 但我一直在覆盖文档。
要在工作表第一行上方插入一行,请使用:
ws.Row(1).InsertRowsAbove(1);
// ^ number of rows to insert
还有一种方法InsertRowsBelow()
可以在某行下方插入新行。有关更多示例,请参阅 documentation。