1. Produk
  2.   Hamparan
  3.   .NET
  4.   ClosedXML
 
  

Perpustakaan .NET Sumber Terbuka untuk Memanipulasi Hamparan Excel

ClosedXML membolehkan anda membaca, memanipulasi dan menulis Dokumen Microsoft Excel

ClosedXML ialah API C# sumber terbuka untuk membaca, memanipulasi dan menulis dokumen Microsoft Excel 2007+ (.xlsx, .xlsm). API membolehkan anda membuat fail Excel tanpa menggunakan aplikasi Excel dan membaca fail menggunakan ciri yang dipertingkatkan.

Menggunakan API anda boleh menggayakan buku kerja anda dengan menggunakan pewarnaan latar belakang dan sempadan sel. Anda boleh menambah, mengalih keluar dan mengalihkan lembaran kerja anda serta mengurus jenis data di dalam excel.

Previous Next

Bermula dengan ClosedXML

Cara yang disyorkan untuk memasang ClosedXML adalah daripada NuGet, Sila gunakan arahan berikut untuk pemasangan yang lebih pantas.

Pasang ClosedXML daripada NuGet

 Install-Package ClosedXML

Cipta Buku Kerja Baharu secara Percuma menggunakan C#

CLosedXML membenarkan pembangun C# .NET mencipta lembaran kerja excel baharu. Anda boleh mencipta buku kerja kosong menggunakan kaedah XLWorkbook(). Perpustakaan telah menyertakan beberapa ciri penting untuk mengurus dokumen lembaran kerja anda. Ia membolehkan anda menambah lembaran kerja dalam buku kerja anda, menambah sel dan lajur, menggunakan gaya pada baris dan lajur, memadamkan sel yang tidak diingini dan banyak lagi.

Cipta Buku Kerja Baharu melalui .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");
}

Gaya Helaian Excel menggunakan C#

API ClosedXML sumber terbuka membolehkan pembangun perisian menggunakan gaya pada helaian excel mereka dengan hanya beberapa baris kod C#. API diperkaya dengan ciri penggayaan termasuk penjajaran, jidar, isian, fon, format nombor, baris penggayaan, lajur dan banyak lagi. Perpustakaan juga membenarkan pengguna mengubah gaya mengikut keperluan mereka.

Cara Memohon Gaya pada Helaian Excel melalui Perpustakaan 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"));

Menggunakan Penapis Auto dalam Excel menggunakan C#

Pustaka ClosedXML telah menyertakan sokongan lengkap untuk menggunakan penapis di dalam lembaran kerja excel anda. Perpustakaan telah menyertakan pelbagai jenis penapis untuk kemudahan pengguna. Anda boleh menggunakan penapis pada julat tertentu, gunakan penapis pada nilai dan buat penapis tersuai anda sendiri juga.

Cara Memohon Penapis Auto dalam Excel melalui 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();
            }
        }
    }
 Melayu