【发布时间】:2020-12-18 08:16:33
【问题描述】:
我可以使用 EPPlus 库导出 excel。当我添加页眉和页脚时,它只能在我单击 Ctrl + P 时显示,我的意思是仅在打印预览中。现在我想用marge所有单元格在第一行设置标题,然后写列标题。那么如何在第二个列表中的表格的第一行和表格的列标题中设置标题文本。
using (ExcelPackage excel = new ExcelPackage())
{
var sheet = excel.Workbook.Worksheets.Add("Worksheet1");
var headerRow = new List<string[]>()
{
new string[]
{
"Transaction Id", "Date", "Time", "Id", "Name", "Amount"
}
};
string headerRange = "A1:" + Char.ConvertFromUtf32(headerRow[0].Length + 64) + "1";
// Target a worksheet
var worksheet = excel.Workbook.Worksheets["Worksheet1"];
// Popular header row data
worksheet.Cells[headerRange].LoadFromArrays(headerRow);
var totalNoOfRows = depositList.Count() + 1;
//ExcelWorksheet ws = worksheet.Workbook.Worksheets.Add("Demo");
//ws.Cells["A1:G1"].Merge = true;
// Header Text Setup
var header = sheet.HeaderFooter.OddHeader;
header.CenteredText = "&18&U&\"Times New Roman,Regular Bold\"&14& " + ClientName + " \n Report \n";
worksheet.PrinterSettings.TopMargin = 1;
// Footer Text Setup
ExcelHeaderFooterText footer = sheet.HeaderFooter.OddFooter;
header.RightAlignedText = "&10&P of &N";
footer.LeftAlignedText = "&16&\"Aril, Bold\"Download Date and Time " + DateTime.Now;
using (MemoryStream stream = new MemoryStream())
{
excel.SaveAs(stream);
return File(stream.ToArray(),
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"Report(" + ClientName + ").xlsx");
}
}
我已经添加了图像,但我很困惑将表头行设置在第二行。
ExcelWorksheet ws = worksheet.Workbook.Worksheets.Add("Demo");
ws.Cells["A1:J1"].Merge = true;
var headerRow = new List<string[]>()
{
new string[]
{
"Transaction Id", "Date", "Time", "Id", "Name", "Amount"
}
};
【问题讨论】:
标签: c# asp.net-core epplus