Arbeiten mit Excel in C# (.NET): Bibliotheken EPPlus, ClosedXML und NPOI

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Arbeiten mit Excel in C# (.NET): Die besten Bibliotheken und Beispiele



Die Arbeit mit Excel-Tabellen ist eine der häufigsten Aufgaben in der Unternehmensentwicklung mit C#. Ob Berichtserstellung, Datenimport oder Automatisierung von Routineaufgaben – Sie benötigen ein zuverlässiges Werkzeug. In diesem Artikel betrachten wir drei beliebte Bibliotheken für die Arbeit mit Excel im .NET-Ökosystem: EPPlus, ClosedXML und NPOI. Sie erfahren deren Besonderheiten, Stärken und sehen Codebeispiele.



1. EPPlus – Ein leistungsstarkes und modernes Werkzeug



EPPlus ist eine der beliebtesten Bibliotheken für die Arbeit mit Excel-Dateien (.xlsx) in .NET. Sie unterstützt nahezu alle Excel-Funktionen: Formatierung, Diagramme, Pivot-Tabellen, bedingte Formatierung und vieles mehr. Ab Version 5 wird EPPlus unter der Polyform Noncommercial-Lizenz (kostenlos für nicht-kommerzielle Nutzung) vertrieben, für die kommerzielle Nutzung ist der Erwerb einer Lizenz erforderlich.



Installation

Install-Package EPPlus


Beispiel: Erstellen einer einfachen Excel-Datei

using OfficeOpenXml;

class Program{ static void Main() { // Lizenzkontext festlegen (für nicht-kommerzielle Nutzung) ExcelPackage.LicenseContext = LicenseContext.NonCommercial;

using (var package = new ExcelPackage()) { var worksheet = package.Workbook.Worksheets.Add("Bericht"); // Überschriften worksheet.Cells["A1"].Value = "Name"; worksheet.Cells["B1"].Value = "Alter"; worksheet.Cells["C1"].Value = "Stadt"; // Daten worksheet.Cells["A2"].Value = "Anna"; worksheet.Cells["B2"].Value = 28; worksheet.Cells["C2"].Value = "Moskau"; worksheet.Cells["A3"].Value = "Ivan"; worksheet.Cells["B3"].Value = 35; worksheet.Cells["C3"].Value = "Sankt Petersburg"; // Formatierung worksheet.Cells["A1:C1"].Style.Font.Bold = true; worksheet.Cells["A1:C1"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; worksheet.Cells["A1:C1"].Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.LightBlue); // Spaltenbreite automatisch anpassen worksheet.Cells.AutoFitColumns();

// Speichern var file = new FileInfo("Bericht.xlsx"); package.SaveAs(file); } }}


Vorteile von EPPlus:

  • Unterstützung komplexer Objekte: Diagramme, Pivot-Tabellen, Sparklines
  • Hohe Leistung bei der Arbeit mit großen Dateien
  • Hervorragende Dokumentation und aktive Community

Nachteile: Kostenpflichtige kommerzielle Lizenz, keine Unterstützung für .xls (altes Format).



2. ClosedXML – Einfachheit und Benutzerfreundlichkeit



ClosedXML ist eine kostenlose Open-Source-Bibliothek, die eine benutzerfreundliche API für die Arbeit mit Excel bietet. Sie basiert auf dem OpenXML SDK, verbirgt jedoch die gesamte Komplexität und bietet eine intuitive Schnittstelle. Ideal für die schnelle Erstellung von Berichten und Tabellen.



Installation

Install-Package ClosedXML


Beispiel: Erstellen einer Datei mit Formatierung

using ClosedXML.Excel;

class Program{ static void Main() { using (var workbook = new XLWorkbook()) { var ws = workbook.Worksheets.Add("Verkäufe"); // Überschriften ws.Cell("A1").Value = "Produkt"; ws.Cell("B1").Value = "Menge"; ws.Cell("C1").Value = "Preis"; // Daten ws.Cell("A2").Value = "Laptop"; ws.Cell("B2").Value = 5; ws.Cell("C2").Value =

Empfehlungen