ไลบรารี .NET แบบโอเพ่นซอร์สสำหรับการจัดการสเปรดชีต Excel
ClosedXML ให้คุณอ่าน จัดการ และเขียนเอกสาร Microsoft Excel
ClosedXML เป็นโอเพ่นซอร์ส C# API สำหรับการอ่าน จัดการ และเขียนเอกสาร Microsoft Excel 2007+ (.xlsx, .xlsm) API ช่วยให้คุณสร้างไฟล์ Excel โดยไม่ต้องใช้แอปพลิเคชัน Excel และอ่านไฟล์โดยใช้คุณสมบัติขั้นสูง
การใช้ API คุณสามารถจัดรูปแบบสมุดงานของคุณโดยใช้สีพื้นหลังและเส้นขอบเซลล์ คุณสามารถเพิ่ม ลบ และย้ายเวิร์กชีตของคุณ และจัดการประเภทข้อมูลภายใน excel
เริ่มต้นใช้งาน ClosedXML
วิธีที่แนะนำในการติดตั้ง ClosedXML มาจาก NuGet โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่เร็วขึ้น
ติดตั้ง ClosedXML จาก NuGet
Install-Package ClosedXML
สร้างสมุดงานใหม่ฟรีโดยใช้ C #
CLosedXML ช่วยให้ C # .NET นักพัฒนาในการสร้างแผ่นงาน excel ใหม่ คุณสามารถสร้างตําราเปล่าโดยใช้วิธี XLWorkbook () ไลบรารีได้รวมคุณสมบัติที่สําคัญหลายประการสําหรับการจัดการเอกสารแผ่นงานของคุณ จะช่วยให้การเพิ่มแผ่นงานในตําราของคุณเพิ่มเซลล์และคอลัมน์ใช้รูปแบบแถวและคอลัมน์ลบเซลล์ที่ไม่พึงประสงค์และอื่น ๆ อีกมากมาย
สร้าง Cookbook ใหม่ผ่าน .NET API
using (var workbook = new XLWorkbook())
{
var worksheet = workbook.Worksheets.Add("Sample Sheet");
worksheet.Cell("A1").Value = "Hello World!";
worksheet.Cell("A2").FormulaA1 = "=MID(A1, 7, 5)";
workbook.SaveAs("HelloWorld.xlsx");
}
จัดรูปแบบแผ่นงาน Excel โดยใช้ C #
Open Source ClosedXML API ช่วยให้ผู้พัฒนาซอฟต์แวร์สามารถใช้รูปแบบกับแผ่น excel ของพวกเขาด้วยรหัส C # จํานวนสองบรรทัด API อุดมไปด้วยคุณสมบัติการจัดแต่งทรงผมรวมถึงการจัดตําแหน่งชายแดนเติมตัวอักษรรูปแบบตัวเลขแถวจัดแต่งทรงผมคอลัมน์และอื่น ๆ ห้องสมุดยังช่วยให้ผู้ใช้สามารถปรับเปลี่ยนรูปแบบตามความต้องการของพวกเขา
วิธีการใช้รูปแบบแผ่นงาน Excel ผ่านห้องสมุด C #
var path = Program.BaseCreatedDirectory;
new StyleFont().Create(Path.Combine(path, "styleFont.xlsx"));
new StyleFill().Create(Path.Combine(path, "styleFill.xlsx"));
new StyleBorder().Create(Path.Combine(path, "styleBorder.xlsx"));
new StyleAlignment().Create(Path.Combine(path, "styleAlignment.xlsx"));
new StyleNumberFormat().Create(Path.Combine(path, "styleNumberFormat.xlsx"));
new StyleIncludeQuotePrefix().Create(Path.Combine(path, "styleIncludeQuotePrefix.xlsx"));
การใช้ตัวกรองอัตโนมัติใน Excel โดยใช้ C #
ห้องสมุด ClosedXML ได้รวมการสนับสนุนที่สมบูรณ์สําหรับการใช้ตัวกรองภายในแผ่นงาน excel ของคุณ ไลบรารีได้รวมตัวกรองประเภทต่างๆเพื่อความสะดวกของผู้ใช้ คุณสามารถใช้ตัวกรองในช่วงที่เฉพาะเจาะจงใช้ตัวกรองที่มีค่าและสร้างตัวกรองที่กําหนดเองของคุณเองเช่นกัน
วิธีการใช้ตัวกรองอัตโนมัติใน Excel ผ่าน C #
public class DynamicAutoFilter : IXLExample
{
public void Create(string filePath)
{
var wb = new XLWorkbook();
IXLWorksheet ws;
#region Single Column Numbers
String singleColumnNumbers = "Single Column Numbers";
ws = wb.Worksheets.Add(singleColumnNumbers);
// Add a bunch of numbers to filter
ws.Cell("A1").SetValue("Numbers")
.CellBelow().SetValue(2)
.CellBelow().SetValue(3)
.CellBelow().SetValue(3)
.CellBelow().SetValue(5)
.CellBelow().SetValue(1)
.CellBelow().SetValue(4);
// Add filters
ws.RangeUsed().SetAutoFilter().Column(1).AboveAverage();
// Sort the filtered list
//ws.AutoFilter.Sort(1);
#endregion
#region Multi Column
String multiColumn = "Multi Column";
ws = wb.Worksheets.Add(multiColumn);
ws.Cell("A1").SetValue("First")
.CellBelow().SetValue("B")
.CellBelow().SetValue("C")
.CellBelow().SetValue("C")
.CellBelow().SetValue("E")
.CellBelow().SetValue("A")
.CellBelow().SetValue("D");
ws.Cell("B1").SetValue("Numbers")
.CellBelow().SetValue(2)
.CellBelow().SetValue(3)
.CellBelow().SetValue(3)
.CellBelow().SetValue(5)
.CellBelow().SetValue(1)
.CellBelow().SetValue(4);
ws.Cell("C1").SetValue("Strings")
.CellBelow().SetValue("B")
.CellBelow().SetValue("C")
.CellBelow().SetValue("C")
.CellBelow().SetValue("E")
.CellBelow().SetValue("A")
.CellBelow().SetValue("D");
// Add filters
ws.RangeUsed().SetAutoFilter().Column(2).BelowAverage();
// Sort the filtered list
//ws.AutoFilter.Sort(3);
#endregion
using (var ms = new MemoryStream())
{
wb.SaveAs(ms);
var workbook = new XLWorkbook(ms);
#region Single Column Numbers
//workbook.Worksheet(singleColumnNumbers).AutoFilter.Sort(1, XLSortOrder.Descending);
#endregion
#region Multi Column
//workbook.Worksheet(multiColumn).AutoFilter.Sort(3, XLSortOrder.Descending);
#endregion
workbook.SaveAs(filePath);
ms.Close();
}
}
}