1. Produse
  2.   Foaie de calcul
  3.   .NET
  4.   ClosedXML
 
  

Bibliotecă .NET cu sursă deschisă pentru manipularea foilor de calcul Excel

ClosedXML vă permite să citiți, să manipulați și să scrieți documente Microsoft Excel

ClosedXML este un API C# open source pentru citirea, manipularea și scrierea documentelor Microsoft Excel 2007+ (.xlsx, .xlsm). API-ul vă permite să creați fișiere Excel fără a utiliza aplicația Excel și să citiți fișiere folosind funcțiile îmbunătățite.

Folosind API-ul, vă puteți stila registrele de lucru folosind culoarea de fundal și marginile celulelor. Puteți adăuga, elimina și muta foile de lucru și puteți gestiona tipuri de date în Excel.

Previous Next

Noțiuni introductive cu ClosedXML

Modul recomandat de a instala ClosedXML este de la NuGet. Vă rugăm să utilizați următoarea comandă pentru o instalare mai rapidă.

Instalați ClosedXML din NuGet

 Install-Package ClosedXML

Creați noi registre de lucru gratuit folosind C#

CLosedXML permite dezvoltatorilor C.NET să creeze noi foi de lucru excel. Puteți crea o carte de bucate albă folosind metoda XLWorkbook(). Biblioteca a inclus mai multe caracteristici importante pentru gestionarea documentelor foii de lucru. Acesta permite adăugarea foilor de lucru în cartea de bucate, adăugarea de celule și coloane, aplicarea stilurilor la rânduri și coloane, ștergerea celulelor nedorite și multe altele.

Creați cărți noi prin .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");
}

Stilați foi Excel folosind C#

Open source ClosedML API permite dezvoltatorilor de software să aplice stilurile pe foile lor excele cu doar câteva linii de cod C. API este îmbogățit cu caracteristici de stil, inclusiv aliniere, frontieră, umplere, font, format de numere, rânduri de styling, coloane și multe altele. Biblioteca permite, de asemenea, utilizatorilor să modifice stilul în funcție de nevoile lor.

Cum să aplicați stilurile în foile Excel prin Biblioteca 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"));

Utilizarea filtrelor automate în Excel folosind C#

Biblioteca închisăXML a inclus suport complet pentru aplicarea filtrelor în foile de lucru ex. Biblioteca a inclus diferite tipuri de filtre pentru confortul utilizatorului. Puteți aplica filtrul într-o anumită gamă, aplicați un filtru pentru valori și creați propriile filtre personalizate.

Cum se aplică filtrele auto în Excel prin 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();
            }
        }
    }
 Română