[研究][ASP.NET]ClosedXML元件常用屬性或方法
2022-04-02
2023-05-01更新
環境:Visual Studio 2022 + ASP.NET + WebForm + Web Application + C#
// 建立工作簿
IXLWorkbook wb = new XLWorkbook();
// 建立工作表
IXLWorksheet sheet = wb.Worksheets.Add("Employee");
// G欄位寬度40
sheet.Column("G").Width = 40;
// 第一個欄位寬度40
sheet.Column(1).Width = 40;
sheet.Range(1, 1, 1, headerList.Count()).Merge();
sheet.Cell(1, 1).Value = "Employee Report";
// 樣式-背景色
sheet.Cell(1, 1).Style.Fill.SetBackgroundColor(XLColor.AppleGreen);
// 字體大小
sheet.Cell(1, 1).Style.Font.SetFontSize(12);
// 粗體
sheet.Cell(1, 1).Style.Font.SetBold();
// 水平垂直對齊方式
sheet.Cell(1, 1).Style.Alignment.Horizontal = XLAlignmentHorizontalValues.Center;
sheet.Cell(1, 1).Style.Alignment.Vertical = XLAlignmentVerticalValues.Center;
// 動態範圍水平向上對齊方式, rowIndex 是資料橫列數,假設欄位使用到 S
string endCell = "S" + rowIndex.ToString();
ws.Ranges("A1:" + endCell).Style.Alignment.Vertical = XLAlignmentVerticalValues.Top; // 水平向上對齊
// 寫入 / ClosedXML 的 row 或 cell 都是從 1 開始
sheet.Cell(2, 3).Value = "test";
// 上框線
sheet.Cell(2, 3).Style.Border.SetTopBorder(XLBorderStyleValues.Double);
// 自適應欄寬,這要在資料都已經寫入欄位中,存檔前再做
sheet.Columns().AdjustToContents();
ws.Column(columnIndex).Width -= 1; // 自適應欄寬
using (MemoryStream ms = new MemoryStream())
{
// 將檔案存入記憶流
wb.SaveAs(ms);
// 記憶流轉換成 byte[]
var content = ms.ToArray();
return File(content, contentType, fileName);
}
ws.Range("A1:D4").Style.Border.TopBorder = XLBorderStyleValues.Thin;
ws.Range("A1:D4").Style.Border.InsideBorder = XLBorderStyleValues.Dotted;
ws.Range("A1:D4").Style.Border.OutsideBorder = XLBorderStyleValues.Thin;
ws.Range("A1:D4").Style.Border.LeftBorder = XLBorderStyleValues.Thin;
ws.Range("A1:D4").Style.Border.RightBorder = XLBorderStyleValues.Thin;
ws.Range("A1:D4").Style.Border.TopBorder = XLBorderStyleValues.Thin;
(完)
相關
[研究][ASP.NET]ClosedXML元件常用屬性或方法http://shaurong.blogspot.com/2022/04/aspnetclosedxml.html
[研究][ASP.NET]使用 ClosedXML 0.95.4 讀取匯入 .xlsx 到資料庫(暫存、不暫存檔)
http://shaurong.blogspot.com/2021/02/aspnet-closedxml-0954-xlsx.html
[研究][ASP.NET]使用 ClosedXML 0.95.4 匯出、寫入 .xlsx(暫存、不暫存檔)
http://shaurong.blogspot.com/2021/02/aspnet-closedxml-0954-xlsx_17.html
嗨,我使用sheet.Columns().AdjustToContents(); 出現A generic error occurred in GDI+ 查不出什麼原因造成的
回覆刪除