IRONSOFTWAREHOME
IRONXL VERWENDEN

Creating Excel Reports in C# with IronXL

Curtis Chau
Curtis Chau
Updated: 8. Mai 2026

Excel-Berichte in C# zu erstellen, ist ein grundlegendes Erfordernis in modernen Geschäfts- und .NET-Anwendungen. Egal, ob Sie Finanzberichte, Verkaufsanalysen oder Bestandsübersichten erstellen, die Automatisierung des Erstellungsprozesses von Excel-Dateien und Excel-Tabellen spart Stunden manueller Arbeit und reduziert Fehler.

IronXL bietet eine leistungsstarke, intuitive Lösung für Entwickler, um einen Excel-Bericht in C# zu erstellen, ohne dass Microsoft Office, MS Excel oder traditionelle Interop-Abhängigkeiten erforderlich sind. Im Gegensatz zu OLE-Automatisierung oder Ansätzen, die auf der Excel-Anwendung basieren, ermöglicht IronXL das Erzeugen von Excel-Arbeitsmappen und Excel-Daten direkt im Code mit nur einer Zeile, wo dies erforderlich ist. In diesem Leitfaden zeigen wir Ihnen, wie Sie mit IronXL Excel-Berichte erstellen können, komplett mit einfach zu befolgendem Beispielcode, den Sie leicht in Ihre eigenen Projekte implementieren können!

Was ist IronXL und warum sollte man es für die Generierung von Excel-Dateien verwenden?

IronXL ist eine .NET-Excel-Bibliothek, die es Entwicklern ermöglicht, Excel-Tabellen zu erstellen, zu lesen und Excel-Dateien direkt aus C#- oder Visual Basic-Quellcode zu bearbeiten. Im Gegensatz zu Microsoft Office Interop-Ansätzen, die sich auf die vollständige Excel-Anwendung oder das Reverse Engineering über Open XML SDK stützen, funktioniert IronXL in Windows-, Linux-, macOS- und Cloud-Umgebungen, ohne dass eine Excel-Installation oder Abhängigkeiten von Dritten erforderlich sind. Dies macht es ideal für serverseitige Excel-Berichte, automatisierte Workflows und Webanwendungen, die auf .NET Core oder dem .NET-Framework aufgebaut sind.

Für Teams, die von manuellen Excel-Prozessen, älteren Bibliotheken oder Open XML-Produktivitätstool-Workflows umsteigen müssen, die das Navigieren in verschiedenen XML-Namespaces erfordern, bietet IronXL eine intuitive API. Es unterstützt sowohl alte XLS-Dateien als auch moderne XLSX-Dateien, die im Wesentlichen ZIP-Dateien mit XML-Dateien und verschiedenen Ordnern sind. Egal, ob Sie ein neues Excel-Arbeitsbuch erzeugen, mehrere Arbeitsblätter bearbeiten oder Excel-Daten aus externem Code laden möchten, IronXL vereinfacht den Prozess erheblich, ohne dass ein Verständnis der zugrunde liegenden Formate erforderlich ist.

Erste Schritte mit IronXL zur Erstellung einer Excel-Datei

Die Einrichtung von IronXL, um Excel-Berichte zu erstellen, dauert nur wenige Minuten. Installieren Sie die Bibliothek über den NuGet-Paket-Manager in Visual Studio:

PM > Install-Package IronXL.Excel

Laden Sie IronXL noch heute herunter und beginnen Sie mit der Automatisierung Ihrer Excel-Berichtserstellung.

Nachdem die Installation abgeschlossen ist, erfordert die Erstellung Ihres ersten Excel-Berichts nur ein paar Codezeilen:

using IronXL;
// Create a new Excel workbook for reports
WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
// Add a worksheet for the report
WorkSheet reportSheet = workBook.CreateWorkSheet("Monthly Report");
// Add a title
reportSheet["A1"].Value = "Sales Report - January 2024";
reportSheet["A1"].Style.Font.Bold = true;
// Save the Excel report
workBook.SaveAs("MonthlyReport.xlsx");

Dieser Code erstellt eine neue Excel-Berichtsdatei mit einem formatierten Titel. Die vertraute Zellbezugssyntax (reportSheet["A1"]) macht es Entwicklern leicht, genau anzugeben, wo Daten erscheinen sollen, genau wie bei der manuellen Arbeit mit Excel.

Ausgabe

So erstellen Sie Excel-Berichte in C# mit IronXL: Bild 1 - Beispielausgabe in Excel

Daten aus mehreren Quellen laden

Echte Excel-Berichte verwenden selten statische Daten. IronXL ist hervorragend darin, Excel-Daten aus verschiedenen Formaten, APIs, neuen DataTable-Quellen oder sogar mehreren unterschiedlichen XML-Dateien zu integrieren. Dies macht es perfekt für die dynamische C# Excel-Berichtsgenerierung in serverseitigen oder Webanwendungen.

Datenbankintegration

Für datenbankgestützte Excel-Berichte arbeitet IronXL nahtlos mit ADO.NET DataTables zusammen:

using System.Data;
using System.Data.SqlClient;
// Fetch data from database
string connectionString = "Server=localhost;Database=Sales;Integrated Security=true;";
DataTable salesData = new DataTable();
using (SqlConnection conn = new SqlConnection(connectionString))
{
    SqlDataAdapter adapter = new SqlDataAdapter(
        "SELECT ProductName, Quantity, Revenue FROM MonthlySales", conn);
    adapter.Fill(salesData);
}
// Create Excel report from DataTable
WorkBook workBook = WorkBook.Create();
WorkSheet sheet = workBook.CreateWorkSheet("Sales Data");
// Add headers
sheet["A1"].Value = "Product";
sheet["B1"].Value = "Quantity";
sheet["C1"].Value = "Revenue";
// Populate data
int row = 2;
foreach (DataRow dataRow in salesData.Rows)
{
    sheet[$"A{row}"].Value = dataRow["ProductName"];
    sheet[$"B{row}"].Value = dataRow["Quantity"];
    sheet[$"C{row}"].Value = dataRow["Revenue"];
    row++;
}

Dieser Ansatz lädt Verkaufsdaten direkt von SQL Server in Ihren Excel-Bericht. Die DataTable-Integration bedeutet, dass Sie bestehenden Datenzugriffscode ohne Modifizierung verwenden können. Für komplexere Szenarien, sehen Sie sich an, wie man Excel aus SQL-Datenbanken lädt.

Arbeiten mit Sammlungen

Für In-Memory-Daten, Excel-Daten aus API-Antworten oder eine neue DataTable können Collections Excel-Arbeitsblätter einfach und ohne Microsoft Excel oder Abhängigkeiten von Drittanbietern auffüllen:

var salesRecords = new List<SalesRecord>
{
    new SalesRecord { Product = "Widget A", Units = 150, Price = 29.99m },
    new SalesRecord { Product = "Widget B", Units = 82, Price = 49.99m }
};
// Convert collection to Excel
for (int i = 0; i < salesRecords.Count; i++)
{
    sheet[$"A{i+2}"].Value = salesRecords[i].Product;
    sheet[$"B{i+2}"].Value = salesRecords[i].Units;
    sheet[$"C{i+2}"].Value = salesRecords[i].Price;
}

Dieser Methode erlaubt es, einen Excel-Bericht in C# direkt in einer .NET-Anwendung zu erstellen und vereinfacht den Prozess der Erstellung von mehreren Arbeitsblättern oder XLSX-Dateien erheblich im Vergleich zur manuellen OLE-Automatisierung oder der Rückwärtsingenieurierung von XML-Dateien.

Ausgabe

So erstellen Sie Excel-Berichte in C# mit IronXL: Bild 2 – Beispielarbeitsblatt aus der Datenausgabe

Formatierung professioneller Excel-Berichte

Rohdaten allein machen keinen professionellen Bericht. IronXL bietet umfassende Zellformatierungsoptionen, um polierte, geschäftsreife Excel-Dateien zu erstellen. Der folgende Code zeigt, wie einfach das mit IronXL ist:

using IronXL;
using IronXL.Styles;

class Program
{
    static void Main(string[] args)
    {
        // Create a new workbook
        var workbook = WorkBook.Create(ExcelFileFormat.XLSX);
        // Add a new worksheet
        var sheet = workbook.CreateWorkSheet("MySheet");
        // Add header values
        sheet["A1"].Value = "Product";
        sheet["B1"].Value = "Quantity";
        sheet["C1"].Value = "Price";
        // Add sample data rows
        sheet["A2"].Value = "Laptop";
        sheet["B2"].Value = 5;
        sheet["C2"].Value = 1299.99;
        sheet["A3"].Value = "Headphones";
        sheet["B3"].Value = 15;
        sheet["C3"].Value = 199.50;
        sheet["A4"].Value = "Keyboard";
        sheet["B4"].Value = 10;
        sheet["C4"].Value = 89.99;
        sheet["A5"].Value = "Monitor";
        sheet["B5"].Value = 7;
        sheet["C5"].Value = 249.00;
        // Header formatting
        var headerRange = sheet["A1:C1"];
        headerRange.Style.Font.Bold = true;
        headerRange.Style.SetBackgroundColor("#4472C4");
        headerRange.Style.Font.Color = "#FFFFFF";
        headerRange.Style.BottomBorder.Type = BorderType.Thick;
        // Number formatting for currency
        sheet["C:C"].FormatString = "$#,##0.00";
        // Alternating row colors for readability
        for (int row = 2; row <= 10; row++)
        {
            if (row % 2 == 0)
            {
                sheet[$"A{row}:C{row}"].Style.SetBackgroundColor("#F2F2F2");
            }
        }
        // Column width adjustment
        sheet.Columns[0].Width = 15 * 256; // Width in 1/256th of character width
        sheet.Columns[2].Width = 12 * 256;
        // Add borders around data
        var dataRange = sheet["A1:C10"];
        dataRange.Style.TopBorder.Type = BorderType.Thin;
        dataRange.Style.RightBorder.Type = BorderType.Thin;
        dataRange.Style.BottomBorder.Type = BorderType.Thin;
        dataRange.Style.LeftBorder.Type = BorderType.Thin;
        // Save the workbook to a file
        workbook.SaveAs("MyWorkbook.xlsx");
    }
}

Diese Formatierungsoptionen verwandeln einfache Daten in professionelle Berichte. Die Style-API deckt alles von Schriften und Farben bis hin zu Rändern und Ausrichtung ab und bietet vollständige Kontrolle über das Erscheinungsbild des Excel-Berichts. Für erweiterte Formatierungsanforderungen, erkunden Sie bedingte Formatierung, um wichtige Daten automatisch hervorzuheben.

So erstellen Sie Excel-Berichte in C# mit IronXL: Bild 3 – Formatierte Excel-Ausgabe

Verwendung von Formeln für dynamische Excel-Berichtrechnungen

Die Stärke von Excel liegt in seinen Formeln, und IronXL unterstützt vollständig die Erstellung von Excel-Formeln:

// Add formula for row totals
sheet["D1"].Value = "Total";
sheet["D2"].Formula = "=B2*C2";
// Copy formula down the column
for (int row = 3; row <= 10; row++)
{
    sheet[$"D{row}"].Formula = $"=B{row}*C{row}";
}
// Add summary formulas
sheet["A12"].Value = "Summary";
sheet["B12"].Formula = "=SUM(B2:B10)";
sheet["C12"].Formula = "=AVERAGE(C2:C10)";
sheet["D12"].Formula = "=SUM(D2:D10)";

Die Formelunterstützung umfasst alle Standard-Excel-Funktionen wie SUM, AVERAGE, IF, VLOOKUP und weitere. IronXL behandelt automatisch Formelnabhängigkeiten und Berechnungsreihenfolge, wodurch die Erstellung von Excel-Berichten mit komplexen Berechnungen einfach wird. Erfahren Sie mehr über Mathematikfunktionen in IronXL.

So erstellen Sie Excel-Berichte in C# mit IronXL: Bild 4 – Beispielausgabe mit Formeln

Vorlagenbasierte Berichte

Für wiederkehrende Excel-Berichte oder standardisierte Arbeitsmappen unterstützt IronXL die vorlagenbasierte Erstellung, sodass Entwickler eine Excel-Datei aus einer Vorlage erstellen können, ohne sich mit Open XML SDK, rels-Dateien oder verschiedenen Ordnern auseinandersetzen zu müssen:

// Load existing template
Workbook templateBook = Workbook.Load("ReportTemplate.xlsx");
Worksheet templateSheet = templateBook.DefaultWorksheet;
// Find and replace template markers
foreach (var cell in templateSheet["A1:Z100"])
{
    if (cell.Text.Contains("{{CompanyName}}"))
        cell.Value = cell.Text.Replace("{{CompanyName}}", "Acme Corp");
    if (cell.Text.Contains("{{ReportDate}}"))
        cell.Value = cell.Text.Replace("{{ReportDate}}", DateTime.Now.ToString("MMMM yyyy"));
}
// Save as new report
templateBook.SaveAs($"Report_{DateTime.Now:yyyyMMdd}.xlsx");

Dieser Ansatz bewahrt eine einheitliche Formatierung bei der Aktualisierung dynamischer Inhalte, perfekt für monatliche Berichte oder standardisierte Dokumente.

So erstellen Sie Excel-Berichte in C# mit IronXL: Bild 5 – Die Berichtsvorlage im Vergleich zu unserer mit der Vorlage erstellten Excel-Datei

Best Practices und Troubleshooting

Beim Implementieren der Excel-Berichterstellung sollten Sie diese Tipps beachten:

  • Speichernutzung bei großen Dateien: Daten in Blöcken verarbeiten, anstatt ganze Datensätze zu laden ( Empfehlungen von Microsoft für große Excel-Dateien )
  • Probleme mit der Datumsformatierung: Verwenden Sie DateTime.ToOADate() für Excel-kompatible Datumsangaben ( Erläuterung des Excel-Datumssystems )
  • Fehler durch gesperrte Dateien: Excel-Objekte sollten immer ordnungsgemäß mit using Anweisungen oder neuen MemoryStream Ansätzen freigegeben werden.
  • Fehlende Stile: Bei einigen Stileigenschaften muss zuerst die Hintergrundfarbe eingestellt werden

Abschluss

IronXL verwandelt die Erstellung von Excel-Berichten von einem mühsamen manuellen Prozess in einen automatisierten, zuverlässigen Arbeitsablauf. Mit seiner intuitiven API, plattformübergreifenden Unterstützung und umfassendem Funktionsumfang können Entwickler professionelle Excel-Berichte in Minuten statt Stunden erstellen. Die Kombination aus einfacher Datenintegration, leistungsstarken Formatierungsoptionen und Formelsupport macht IronXL zu einem unverzichtbaren Werkzeug für jeden C#-Entwickler, der mit Excel-Berichten arbeitet. Für interessierte Entwickler bietet IronXL eine kostenlose Testversion und weitere Lizenzierungsoptionen für Unternehmen und Einzelpersonen.

Erster Schritt:
arrow pointer
Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.

...
Weiterlesen

Verwandte Artikel

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
AWS-Logo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Azure (WebApps, Funktionen v3)
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Azure (WebApps, Funktionen v3)
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.