Βιβλιοθήκη ανοιχτού κώδικα .NET για χειρισμό υπολογιστικών φύλλων του Excel

Το ClosedXML σάς επιτρέπει να διαβάζετε, να χειρίζεστε και να γράφετε Έγγραφα του Microsoft Excel

Το ClosedXML είναι ένα C# API ανοιχτού κώδικα για την ανάγνωση, το χειρισμό και τη σύνταξη εγγράφων του Microsoft Excel 2007+ (.xlsx, .xlsm). Το API σάς επιτρέπει να δημιουργείτε αρχεία Excel χωρίς να χρησιμοποιείτε την εφαρμογή Excel και να διαβάζετε αρχεία χρησιμοποιώντας τις βελτιωμένες δυνατότητες.

Χρησιμοποιώντας το API, μπορείτε να διαμορφώσετε τα βιβλία εργασίας σας χρησιμοποιώντας χρωματισμό φόντου και περίγραμμα κελιών. Μπορείτε να προσθέσετε, να αφαιρέσετε και να μετακινήσετε τα φύλλα εργασίας σας και να διαχειριστείτε τύπους δεδομένων στο excel.

Previous Next

Ξεκινώντας με το ClosedXML

Ο προτεινόμενος τρόπος εγκατάστασης του ClosedXML είναι από το NuGet. Χρησιμοποιήστε την ακόλουθη εντολή για ταχύτερη εγκατάσταση.

Εγκαταστήστε το ClosedXML από το NuGet

 Install-Package ClosedXML

Δημιουργήστε νέα βιβλία εργασίας δωρεάν χρησιμοποιώντας C#

CLosedXML επιτρέπει στους προγραμματιστές C.NET να δημιουργήσουν νέα φύλλα εργασίας excel. Μπορείτε να δημιουργήσετε ένα κενό βιβλίο μαγειρικής χρησιμοποιώντας τη μέθοδο XLWorkbook(). Η βιβλιοθήκη περιλαμβάνει πολλά σημαντικά χαρακτηριστικά για τη διαχείριση των εγγράφων του φύλλου εργασίας σας. Επιτρέπει την προσθήκη φύλλων εργασίας στο βιβλίο μαγειρικής σας, προσθέστε κελιά και στήλες, εφαρμόστε στυλ σε γραμμές και στήλες, διαγράψτε τα ανεπιθύμητα κύτταρα και πολλά άλλα.

Δημιουργήστε νέα cookies μέσω .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#

Η κλειστή βιβλιοθήκη XML έχει συμπεριλάβει πλήρη υποστήριξη για την εφαρμογή φίλτρων στα φύλλα εργασίας 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();
            }
        }
    }
 Ελληνικά