Wie man eine Excel-Datei in C# erstellt

How to Create Excel Files in C# Without Interop

This article was translated from English: Does it need improvement?
Translated
View the article in English

Erfahren Sie, wie Sie Excel-Dateien in C# mit IronXL generieren - einer leistungsstarken .NET Excel-Bibliothek, die Tabellenkalkulationen erstellt, liest und bearbeitet, ohne auf Microsoft Office angewiesen zu sein. Dieses umfassende Tutorial führt Sie durch die programmatische Erstellung von Excel-Arbeitsmappen mit Schritt-für-Schritt-Codebeispielen.

as-heading:2 (Schnellstart: Einfache Ein-Zeilen-Excel-Arbeitsmappe-Erstellung)

Verwenden Sie IronXL, um in kürzester Zeit eine neue Excel-Datei zu erstellen - einfach ein Format auswählen, ein Blatt hinzufügen, einen beliebigen Zellwert festlegen und speichern. Es ist der schnellste Weg, um XLSX-Dateien mit intuitiven API-Aufrufen und ohne Interop-Probleme zu generieren.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel

  2. Copy and run this code snippet.

    WorkBook book = IronXL.WorkBook.Create(IronXL.ExcelFileFormat.XLSX); book.CreateWorkSheet("Sheet1")["A1"].Value = "Hello World"; book.SaveAs("MyFile.xlsx");
  3. Deploy to test on your live environment

    Start using IronXL in your project today with a free trial
    arrow pointer

class="tutorial-segment-title">Übersicht

class="hsg-featured-snippet">

Minimaler Workflow (5 Schritte)

  1. Laden Sie die C# Bibliothek zum Erstellen von Excel- und CSV-Dateien herunter
  2. Erstellen Sie ein ASP.NET Projekt Webanwendung
  3. Erstellen Sie eine Excel-Arbeitsmappe mit IronXL
  4. Setzen Sie Zellwerte in einem Excel-Arbeitsblatt
  5. Wenden Sie Formatierungen an und setzen Sie Hintergrundfarben fest
  6. Verwenden Sie Formeln in Zellen
  7. Legen Sie Arbeitsblatt- und Druckeigenschaften fest
  8. Speichern Sie Ihre Excel-Arbeitsmappe

Was ist IronXL und warum sollte man es zur Erstellung von Excel-Dateien verwenden?

IronXL ist eine intuitive C# & VB Excel API, die es Ihnen ermöglicht, Excel-Tabellendateien in .NET mit außergewöhnlicher Leistung zu lesen, bearbeiten und erstellen. Im Gegensatz zu herkömmlichen Ansätzen muss Microsoft Office nicht installiert oder Excel Interop verwendet werden, was die Bereitstellung einfacher und zuverlässiger macht.

IronXL unterstützt vollständig .NET 9, .NET 8, .NET Core, .NET Framework, Xamarin, Mobile, Linux, macOS und Azure-Umgebungen.

IronXL Features

  • Menschlicher Support direkt von unserem .NET-Entwicklungsteam
  • Schnelle Installation mit Microsoft Visual Studio
  • KOSTENLOS für die Entwicklung. Lizenzen ab $799

Wie kann ich schnell eine Excel-Datei erstellen und speichern?

Install IronXL via NuGet or laden Sie die DLL direkt herunter.

using IronXL;

// Create a new Excel workbook with XLSX format
WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);

// Add a worksheet to the workbook
var workSheet = workBook.CreateWorkSheet("example_sheet");

// Set individual cell values using intuitive syntax
workSheet["A1"].Value = "Example";

// Set multiple cells at once using range syntax
workSheet["A2:A4"].Value = 5;

// Apply cell styling - set background color using hex code
workSheet["A5"].Style.SetBackgroundColor("#f0f0f0");

// Make text bold for better visibility
workSheet["A5:A6"].Style.Font.Bold = true;

// Add Excel formula to calculate sum
workSheet["A6"].Formula = "=SUM(A2:A4)";

// Calculate all formulas to show results
workSheet.EvaluateAll();

// Verify formula calculation worked correctly
if (workSheet["A6"].IntValue == 15) // Sum of three cells with value 5
{
    Console.WriteLine("Formula calculation successful!");
}

// Save the Excel file to disk
workBook.SaveAs("example_workbook.xlsx");
using IronXL;

// Create a new Excel workbook with XLSX format
WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);

// Add a worksheet to the workbook
var workSheet = workBook.CreateWorkSheet("example_sheet");

// Set individual cell values using intuitive syntax
workSheet["A1"].Value = "Example";

// Set multiple cells at once using range syntax
workSheet["A2:A4"].Value = 5;

// Apply cell styling - set background color using hex code
workSheet["A5"].Style.SetBackgroundColor("#f0f0f0");

// Make text bold for better visibility
workSheet["A5:A6"].Style.Font.Bold = true;

// Add Excel formula to calculate sum
workSheet["A6"].Formula = "=SUM(A2:A4)";

// Calculate all formulas to show results
workSheet.EvaluateAll();

// Verify formula calculation worked correctly
if (workSheet["A6"].IntValue == 15) // Sum of three cells with value 5
{
    Console.WriteLine("Formula calculation successful!");
}

// Save the Excel file to disk
workBook.SaveAs("example_workbook.xlsx");
Imports IronXL

' Create a new Excel workbook with XLSX format
Private workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)

' Add a worksheet to the workbook
Private workSheet = workBook.CreateWorkSheet("example_sheet")

' Set individual cell values using intuitive syntax
Private workSheet("A1").Value = "Example"

' Set multiple cells at once using range syntax
Private workSheet("A2:A4").Value = 5

' Apply cell styling - set background color using hex code
workSheet("A5").Style.SetBackgroundColor("#f0f0f0")

' Make text bold for better visibility
workSheet("A5:A6").Style.Font.Bold = True

' Add Excel formula to calculate sum
workSheet("A6").Formula = "=SUM(A2:A4)"

' Calculate all formulas to show results
workSheet.EvaluateAll()

' Verify formula calculation worked correctly
If workSheet("A6").IntValue = 15 Then ' Sum of three cells with value 5
	Console.WriteLine("Formula calculation successful!")
End If

' Save the Excel file to disk
workBook.SaveAs("example_workbook.xlsx")
$vbLabelText   $csharpLabel

Dieser Code demonstriert die wichtigsten IronXL-Features: Erstellen von Arbeitsmappen, Hinzufügen von Arbeitsblättern, Festlegen von Zellwerten und -stilen, Verwenden von Formeln und Speichern von Dateien. The WorkBook class serves as your entry point for all Excel operations, while the WorkSheet class provides methods to manipulate individual sheets.


class="tutorial-segment-title">Schritt 1

1. Wie installiere ich die IronXL C#-Bibliothek?

Installieren Sie die IronXL-Bibliothek mit NuGet (Install-Package IronXL) oder indem Sie die DLL direkt herunterladen.

Nutzen Sie IronXL heute kostenlos in Ihrem Projekt.

Erster Schritt:
green arrow pointer


Wie kann ich IronXL mit NuGet installieren?

Es gibt drei Möglichkeiten, das IronXL NuGet-Paket zu installieren:

  1. Visual Studio Paketmanager
  2. Developer-Befehlseingabe
  3. Direkter Download von NuGet.org

Visual Studio Installation

Visual Studio bietet den NuGet Paketmanager für eine einfache Paketinstallation. Zugriff über das Projektmenü oder durch Rechtsklick auf Ihr Projekt im Solution Explorer.

Visual Studio Projektmenü zeigt die Option 'Manage NuGet Packages'

Abbildung 3Zugriff auf den NuGet Package Manager über das Projektmenü

Lösungs-Explorer-Kontextmenü zeigt die Option 'Manage NuGet Packages'

Abbildung 4Rechtsklick-Kontextmenü im Lösungs-Explorer


Nach dem Klick auf 'Manage NuGet Packages' suchen Sie nach dem Paket IronXL.Excel und installieren es.
NuGet Paketmanager zeigt IronXL.Excel-Paket zur Installation bereit

Abbildung 5IronXL.Excel Installation über den NuGet Paketmanager

Installation über Developer Command Prompt

Nutzen Sie die Package Manager-Konsole mit diesem Befehl:

Install-Package IronXL.Excel

Installation durch direkten Download

  1. Navigieren Sie zu: https://www.nuget.org/packages/IronXL.Excel/
  2. Klicken Sie auf 'Paket herunterladen'
  3. Doppelklicken Sie auf das heruntergeladene Paket
  4. Laden Sie Ihr Visual Studio Projekt neu

Wie installiere ich IronXL durch Herunterladen der DLL?

Laden Sie IronXL direkt von: https://ironsoftware.com/csharp/excel/ herunter

IronXL Website-Downloadseite zeigt Installationsanweisungen und Download-Schaltfläche

Abbildung 6IronXL-Bibliothek von der offiziellen Website herunterladen

Referenzieren Sie die Bibliothek in Ihrem Projekt:

  1. Rechtsklick auf die Lösung im Solution Explorer
  2. Wählen Sie 'Referenzen'
  3. Suchen Sie die IronXL.dll Bibliothek
  4. Klicken Sie 'OK'

Los geht's!

Nun sind Sie bereit, die leistungsstarken Excel-Manipulationsfunktionen von IronXL zu erkunden!


class="tutorial-segment-title">Anleitungen

2. Wie erstelle ich ein ASP.NET-Projekt zur Excel-Erstellung?

Folgen Sie diesen Schritten, um eine ASP.NET-Website zu erstellen:

  1. Öffnen Sie Visual Studio
  2. Klicken Sie auf Datei > Neues Projekt
  3. Wählen Sie 'Web' unter Visual C# in der Projekttypenliste
  4. Wählen Sie 'ASP.NET-Webanwendung'


    Visual Studio Dialogfeld für neues Projekt mit ausgewählter ASP.NET-Webanwendung

    Abbildung 1Neues ASP.NET-Projekt erstellen

  5. Klicken Sie 'OK'
  6. Wählen Sie das Webforms-Template

    ASP.NET-Projekt-Template-Auswahl zeigt die Option Web Forms

    Abbildung 2 – *Web Forms Template auswählen*
  7. Klicken Sie 'OK'

Mit Ihrem Projekt bereit, installieren Sie IronXL, um Excel-Dateien programmatisch zu erstellen.


3. Wie erstelle ich eine Excel-Arbeitsmappe in C#?

Das Erstellen einer neuen Excel-Arbeitsmappe mit IronXL erfordert nur eine Zeile Code:

using IronXL;

// Create workbook with XLSX format (recommended for modern Excel)
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

// Alternative: Create legacy XLS format for older Excel versions
WorkBook legacyWorkbook = WorkBook.Create(ExcelFileFormat.XLS);
using IronXL;

// Create workbook with XLSX format (recommended for modern Excel)
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);

// Alternative: Create legacy XLS format for older Excel versions
WorkBook legacyWorkbook = WorkBook.Create(ExcelFileFormat.XLS);
Imports IronXL

' Create workbook with XLSX format (recommended for modern Excel)
Private workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)

' Alternative: Create legacy XLS format for older Excel versions
Private legacyWorkbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
$vbLabelText   $csharpLabel

Die WorkBook.Create Methode unterstützt sowohl die Formate XLS (Excel 97-2003) als auch XLSX (Excel 2007+). XLSX wird für eine bessere Leistung und kleinere Dateigrößen empfohlen.

3.1. Wie füge ich meiner Arbeitsmappe ein Arbeitsblatt hinzu?

Das Hinzufügen von Arbeitsblättern ist einfach:

// Create a worksheet with custom name for budget tracking
WorkSheet budgetSheet = workbook.CreateWorkSheet("2020 Budget");

// Add multiple worksheets for different purposes
WorkSheet salesSheet = workbook.CreateWorkSheet("Sales Data");
WorkSheet inventorySheet = workbook.CreateWorkSheet("Inventory");

// Access existing worksheet by name
WorkSheet existingSheet = workbook.GetWorkSheet("2020 Budget");
// Create a worksheet with custom name for budget tracking
WorkSheet budgetSheet = workbook.CreateWorkSheet("2020 Budget");

// Add multiple worksheets for different purposes
WorkSheet salesSheet = workbook.CreateWorkSheet("Sales Data");
WorkSheet inventorySheet = workbook.CreateWorkSheet("Inventory");

// Access existing worksheet by name
WorkSheet existingSheet = workbook.GetWorkSheet("2020 Budget");
' Create a worksheet with custom name for budget tracking
Dim budgetSheet As WorkSheet = workbook.CreateWorkSheet("2020 Budget")

' Add multiple worksheets for different purposes
Dim salesSheet As WorkSheet = workbook.CreateWorkSheet("Sales Data")
Dim inventorySheet As WorkSheet = workbook.CreateWorkSheet("Inventory")

' Access existing worksheet by name
Dim existingSheet As WorkSheet = workbook.GetWorkSheet("2020 Budget")
$vbLabelText   $csharpLabel

Eine Arbeitsmappe enthält ein oder mehrere Arbeitsblätter. Jedes Arbeitsblatt besteht aus Zeilen und Spalten, mit Zellen an ihren Schnittstellen. Verwenden Sie die CreateWorkSheet Methode, um neue Blätter zur Arbeitsmappe hinzuzufügen.


4. Wie setze ich Zellwerte in Excel?

4.1. Wie kann ich Zellwerte manuell setzen?

Das Festlegen einzelner Zellwerte verwendet eine intuitive Excel-ähnliche Syntax:

// Set month names in first row for annual budget spreadsheet
workSheet["A1"].Value = "January";
workSheet["B1"].Value = "February";
workSheet["C1"].Value = "March";
workSheet["D1"].Value = "April";
workSheet["E1"].Value = "May";
workSheet["F1"].Value = "June";
workSheet["G1"].Value = "July";
workSheet["H1"].Value = "August";
workSheet["I1"].Value = "September";
workSheet["J1"].Value = "October";
workSheet["K1"].Value = "November";
workSheet["L1"].Value = "December";

// Set different data types - IronXL handles conversion automatically
workSheet["A2"].Value = 1500.50m;  // Decimal for currency
workSheet["A3"].Value = DateTime.Now;  // Date values
workSheet["A4"].Value = true;  // Boolean values
// Set month names in first row for annual budget spreadsheet
workSheet["A1"].Value = "January";
workSheet["B1"].Value = "February";
workSheet["C1"].Value = "March";
workSheet["D1"].Value = "April";
workSheet["E1"].Value = "May";
workSheet["F1"].Value = "June";
workSheet["G1"].Value = "July";
workSheet["H1"].Value = "August";
workSheet["I1"].Value = "September";
workSheet["J1"].Value = "October";
workSheet["K1"].Value = "November";
workSheet["L1"].Value = "December";

// Set different data types - IronXL handles conversion automatically
workSheet["A2"].Value = 1500.50m;  // Decimal for currency
workSheet["A3"].Value = DateTime.Now;  // Date values
workSheet["A4"].Value = true;  // Boolean values
' Set month names in first row for annual budget spreadsheet
workSheet("A1").Value = "January"
workSheet("B1").Value = "February"
workSheet("C1").Value = "March"
workSheet("D1").Value = "April"
workSheet("E1").Value = "May"
workSheet("F1").Value = "June"
workSheet("G1").Value = "July"
workSheet("H1").Value = "August"
workSheet("I1").Value = "September"
workSheet("J1").Value = "October"
workSheet("K1").Value = "November"
workSheet("L1").Value = "December"

' Set different data types - IronXL handles conversion automatically
workSheet("A2").Value = 1500.50D ' Decimal for currency
workSheet("A3").Value = DateTime.Now ' Date values
workSheet("A4").Value = True ' Boolean values
$vbLabelText   $csharpLabel

Die Cell.Value Eigenschaft akzeptiert verschiedene Datentypen, einschließlich Zeichenfolgen, Zahlen, Daten und Booleans. IronXL formatiert Zellen automatisch basierend auf dem Datentyp.

4.2. Wie setze ich Zellwerte dynamisch?

Das dynamische Setzen von Werten ist ideal für datengesteuerte Anwendungen:

// Initialize random number generator for sample data
Random r = new Random();

// Populate cells with random budget data for each month
for (int i = 2; i <= 11; i++)
{
    // Set different budget categories with increasing ranges
    workSheet[$"A{i}"].Value = r.Next(1, 1000);     // Office Supplies
    workSheet[$"B{i}"].Value = r.Next(1000, 2000);  // Utilities
    workSheet[$"C{i}"].Value = r.Next(2000, 3000);  // Rent
    workSheet[$"D{i}"].Value = r.Next(3000, 4000);  // Salaries
    workSheet[$"E{i}"].Value = r.Next(4000, 5000);  // Marketing
    workSheet[$"F{i}"].Value = r.Next(5000, 6000);  // IT Services
    workSheet[$"G{i}"].Value = r.Next(6000, 7000);  // Travel
    workSheet[$"H{i}"].Value = r.Next(7000, 8000);  // Training
    workSheet[$"I{i}"].Value = r.Next(8000, 9000);  // Insurance
    workSheet[$"J{i}"].Value = r.Next(9000, 10000); // Equipment
    workSheet[$"K{i}"].Value = r.Next(10000, 11000); // Research
    workSheet[$"L{i}"].Value = r.Next(11000, 12000); // Misc
}

// Alternative: Set range of cells with same value
workSheet["A13:L13"].Value = 0; // Initialize totals row
// Initialize random number generator for sample data
Random r = new Random();

// Populate cells with random budget data for each month
for (int i = 2; i <= 11; i++)
{
    // Set different budget categories with increasing ranges
    workSheet[$"A{i}"].Value = r.Next(1, 1000);     // Office Supplies
    workSheet[$"B{i}"].Value = r.Next(1000, 2000);  // Utilities
    workSheet[$"C{i}"].Value = r.Next(2000, 3000);  // Rent
    workSheet[$"D{i}"].Value = r.Next(3000, 4000);  // Salaries
    workSheet[$"E{i}"].Value = r.Next(4000, 5000);  // Marketing
    workSheet[$"F{i}"].Value = r.Next(5000, 6000);  // IT Services
    workSheet[$"G{i}"].Value = r.Next(6000, 7000);  // Travel
    workSheet[$"H{i}"].Value = r.Next(7000, 8000);  // Training
    workSheet[$"I{i}"].Value = r.Next(8000, 9000);  // Insurance
    workSheet[$"J{i}"].Value = r.Next(9000, 10000); // Equipment
    workSheet[$"K{i}"].Value = r.Next(10000, 11000); // Research
    workSheet[$"L{i}"].Value = r.Next(11000, 12000); // Misc
}

// Alternative: Set range of cells with same value
workSheet["A13:L13"].Value = 0; // Initialize totals row
' Initialize random number generator for sample data
Dim r As New Random()

' Populate cells with random budget data for each month
For i As Integer = 2 To 11
	' Set different budget categories with increasing ranges
	workSheet($"A{i}").Value = r.Next(1, 1000) ' Office Supplies
	workSheet($"B{i}").Value = r.Next(1000, 2000) ' Utilities
	workSheet($"C{i}").Value = r.Next(2000, 3000) ' Rent
	workSheet($"D{i}").Value = r.Next(3000, 4000) ' Salaries
	workSheet($"E{i}").Value = r.Next(4000, 5000) ' Marketing
	workSheet($"F{i}").Value = r.Next(5000, 6000) ' IT Services
	workSheet($"G{i}").Value = r.Next(6000, 7000) ' Travel
	workSheet($"H{i}").Value = r.Next(7000, 8000) ' Training
	workSheet($"I{i}").Value = r.Next(8000, 9000) ' Insurance
	workSheet($"J{i}").Value = r.Next(9000, 10000) ' Equipment
	workSheet($"K{i}").Value = r.Next(10000, 11000) ' Research
	workSheet($"L{i}").Value = r.Next(11000, 12000) ' Misc
Next i

' Alternative: Set range of cells with same value
workSheet("A13:L13").Value = 0 ' Initialize totals row
$vbLabelText   $csharpLabel

Zeichenfolgeninterpolation ($"A{i}") erleichtert das dynamische Referenzieren von Zellen. Der Range Indexer unterstützt sowohl einzelne Zellen als auch Bereiche.

4.3. Wie befülle ich Excel aus einer Datenbank?

Das Laden von Daten aus Datenbanken in Excel ist eine häufige Anforderung:

using System.Data;
using System.Data.SqlClient;
using IronXL;

// Database connection setup for retrieving sales data
string connectionString = @"Data Source=ServerName;Initial Catalog=SalesDB;Integrated Security=true";
string query = "SELECT ProductName, Quantity, UnitPrice, TotalSales FROM MonthlySales";

// Create DataSet to hold query results
DataSet salesData = new DataSet();

using (SqlConnection connection = new SqlConnection(connectionString))
using (SqlDataAdapter adapter = new SqlDataAdapter(query, connection))
{
    // Fill DataSet with sales information
    adapter.Fill(salesData);
}

// Write headers for database columns
workSheet["A1"].Value = "Product Name";
workSheet["B1"].Value = "Quantity";
workSheet["C1"].Value = "Unit Price";
workSheet["D1"].Value = "Total Sales";

// Apply header formatting
workSheet["A1:D1"].Style.Font.Bold = true;
workSheet["A1:D1"].Style.SetBackgroundColor("#4472C4");
workSheet["A1:D1"].Style.Font.FontColor = "#FFFFFF";

// Populate Excel with database records
DataTable salesTable = salesData.Tables[0];
for (int row = 0; row < salesTable.Rows.Count; row++)
{
    int excelRow = row + 2; // Start from row 2 (after headers)

    workSheet[$"A{excelRow}"].Value = salesTable.Rows[row]["ProductName"].ToString();
    workSheet[$"B{excelRow}"].Value = Convert.ToInt32(salesTable.Rows[row]["Quantity"]);
    workSheet[$"C{excelRow}"].Value = Convert.ToDecimal(salesTable.Rows[row]["UnitPrice"]);
    workSheet[$"D{excelRow}"].Value = Convert.ToDecimal(salesTable.Rows[row]["TotalSales"]);

    // Format currency columns
    workSheet[$"C{excelRow}"].FormatString = "$#,##0.00";
    workSheet[$"D{excelRow}"].FormatString = "$#,##0.00";
}

// Add summary row with formulas
int summaryRow = salesTable.Rows.Count + 2;
workSheet[$"A{summaryRow}"].Value = "TOTAL";
workSheet[$"B{summaryRow}"].Formula = $"=SUM(B2:B{summaryRow-1})";
workSheet[$"D{summaryRow}"].Formula = $"=SUM(D2:D{summaryRow-1})";
using System.Data;
using System.Data.SqlClient;
using IronXL;

// Database connection setup for retrieving sales data
string connectionString = @"Data Source=ServerName;Initial Catalog=SalesDB;Integrated Security=true";
string query = "SELECT ProductName, Quantity, UnitPrice, TotalSales FROM MonthlySales";

// Create DataSet to hold query results
DataSet salesData = new DataSet();

using (SqlConnection connection = new SqlConnection(connectionString))
using (SqlDataAdapter adapter = new SqlDataAdapter(query, connection))
{
    // Fill DataSet with sales information
    adapter.Fill(salesData);
}

// Write headers for database columns
workSheet["A1"].Value = "Product Name";
workSheet["B1"].Value = "Quantity";
workSheet["C1"].Value = "Unit Price";
workSheet["D1"].Value = "Total Sales";

// Apply header formatting
workSheet["A1:D1"].Style.Font.Bold = true;
workSheet["A1:D1"].Style.SetBackgroundColor("#4472C4");
workSheet["A1:D1"].Style.Font.FontColor = "#FFFFFF";

// Populate Excel with database records
DataTable salesTable = salesData.Tables[0];
for (int row = 0; row < salesTable.Rows.Count; row++)
{
    int excelRow = row + 2; // Start from row 2 (after headers)

    workSheet[$"A{excelRow}"].Value = salesTable.Rows[row]["ProductName"].ToString();
    workSheet[$"B{excelRow}"].Value = Convert.ToInt32(salesTable.Rows[row]["Quantity"]);
    workSheet[$"C{excelRow}"].Value = Convert.ToDecimal(salesTable.Rows[row]["UnitPrice"]);
    workSheet[$"D{excelRow}"].Value = Convert.ToDecimal(salesTable.Rows[row]["TotalSales"]);

    // Format currency columns
    workSheet[$"C{excelRow}"].FormatString = "$#,##0.00";
    workSheet[$"D{excelRow}"].FormatString = "$#,##0.00";
}

// Add summary row with formulas
int summaryRow = salesTable.Rows.Count + 2;
workSheet[$"A{summaryRow}"].Value = "TOTAL";
workSheet[$"B{summaryRow}"].Formula = $"=SUM(B2:B{summaryRow-1})";
workSheet[$"D{summaryRow}"].Formula = $"=SUM(D2:D{summaryRow-1})";
Imports System.Data
Imports System.Data.SqlClient
Imports IronXL

' Database connection setup for retrieving sales data
Private connectionString As String = "Data Source=ServerName;Initial Catalog=SalesDB;Integrated Security=true"
Private query As String = "SELECT ProductName, Quantity, UnitPrice, TotalSales FROM MonthlySales"

' Create DataSet to hold query results
Private salesData As New DataSet()

Using connection As New SqlConnection(connectionString)
Using adapter As New SqlDataAdapter(query, connection)
	' Fill DataSet with sales information
	adapter.Fill(salesData)
End Using
End Using

' Write headers for database columns
workSheet("A1").Value = "Product Name"
workSheet("B1").Value = "Quantity"
workSheet("C1").Value = "Unit Price"
workSheet("D1").Value = "Total Sales"

' Apply header formatting
workSheet("A1:D1").Style.Font.Bold = True
workSheet("A1:D1").Style.SetBackgroundColor("#4472C4")
workSheet("A1:D1").Style.Font.FontColor = "#FFFFFF"

' Populate Excel with database records
Dim salesTable As DataTable = salesData.Tables(0)
For row As Integer = 0 To salesTable.Rows.Count - 1
	Dim excelRow As Integer = row + 2 ' Start from row 2 (after headers)

	workSheet($"A{excelRow}").Value = salesTable.Rows(row)("ProductName").ToString()
	workSheet($"B{excelRow}").Value = Convert.ToInt32(salesTable.Rows(row)("Quantity"))
	workSheet($"C{excelRow}").Value = Convert.ToDecimal(salesTable.Rows(row)("UnitPrice"))
	workSheet($"D{excelRow}").Value = Convert.ToDecimal(salesTable.Rows(row)("TotalSales"))

	' Format currency columns
	workSheet($"C{excelRow}").FormatString = "$#,##0.00"
	workSheet($"D{excelRow}").FormatString = "$#,##0.00"
Next row

' Add summary row with formulas
Dim summaryRow As Integer = salesTable.Rows.Count + 2
workSheet($"A{summaryRow}").Value = "TOTAL"
workSheet($"B{summaryRow}").Formula = $"=SUM(B2:B{summaryRow-1})"
workSheet($"D{summaryRow}").Formula = $"=SUM(D2:D{summaryRow-1})"
$vbLabelText   $csharpLabel

Dieses Beispiel zeigt das Lesen von Excel-Daten aus Datenbanken, das Anwenden von Formatierungen und die Verwendung von Formeln für Berechnungen. Die FormatString Eigenschaft ermöglicht eine benutzerdefinierte Zahlenformatierung ähnlich wie in Excel.


5. Wie wende ich Formatierungen auf Excel-Zellen an?

5.1. Wie kann ich Hintergrundfarben in Excel einstellen?

Zellstilierung verbessert die Lesbarkeit und optische Attraktivität:

// Set header row background to light gray using hex color
workSheet["A1:L1"].Style.SetBackgroundColor("#d3d3d3");

// Apply different colors for data categorization
workSheet["A2:A11"].Style.SetBackgroundColor("#E7F3FF"); // Light blue for January
workSheet["B2:B11"].Style.SetBackgroundColor("#FFF2CC"); // Light yellow for February

// Highlight important cells with bold colors
workSheet["L12"].Style.SetBackgroundColor("#FF0000"); // Red for totals
workSheet["L12"].Style.Font.FontColor = "#FFFFFF"; // White text

// Create alternating row colors for better readability
for (int row = 2; row <= 11; row++)
{
    if (row % 2 == 0)
    {
        workSheet[$"A{row}:L{row}"].Style.SetBackgroundColor("#F2F2F2");
    }
}
// Set header row background to light gray using hex color
workSheet["A1:L1"].Style.SetBackgroundColor("#d3d3d3");

// Apply different colors for data categorization
workSheet["A2:A11"].Style.SetBackgroundColor("#E7F3FF"); // Light blue for January
workSheet["B2:B11"].Style.SetBackgroundColor("#FFF2CC"); // Light yellow for February

// Highlight important cells with bold colors
workSheet["L12"].Style.SetBackgroundColor("#FF0000"); // Red for totals
workSheet["L12"].Style.Font.FontColor = "#FFFFFF"; // White text

// Create alternating row colors for better readability
for (int row = 2; row <= 11; row++)
{
    if (row % 2 == 0)
    {
        workSheet[$"A{row}:L{row}"].Style.SetBackgroundColor("#F2F2F2");
    }
}
' Set header row background to light gray using hex color
workSheet("A1:L1").Style.SetBackgroundColor("#d3d3d3")

' Apply different colors for data categorization
workSheet("A2:A11").Style.SetBackgroundColor("#E7F3FF") ' Light blue for January
workSheet("B2:B11").Style.SetBackgroundColor("#FFF2CC") ' Light yellow for February

' Highlight important cells with bold colors
workSheet("L12").Style.SetBackgroundColor("#FF0000") ' Red for totals
workSheet("L12").Style.Font.FontColor = "#FFFFFF" ' White text

' Create alternating row colors for better readability
For row As Integer = 2 To 11
	If row Mod 2 = 0 Then
		workSheet($"A{row}:L{row}").Style.SetBackgroundColor("#F2F2F2")
	End If
Next row
$vbLabelText   $csharpLabel

Die Style.SetBackgroundColor Methode akzeptiert Hex-Farbcodes. Kombinieren Sie Hintergrundfarben mit Schriftfarben für professionell aussehende Tabellenkalkulationen.

5.2. Wie erstelle ich Rahmen in Excel?

Rahmen helfen, Datenregionen zu definieren und die Struktur zu verbessern:

using IronXL;
using IronXL.Styles;

// Create header border - thick bottom line to separate from data
workSheet["A1:L1"].Style.TopBorder.SetColor("#000000");
workSheet["A1:L1"].Style.TopBorder.Type = BorderType.Thick;
workSheet["A1:L1"].Style.BottomBorder.SetColor("#000000");
workSheet["A1:L1"].Style.BottomBorder.Type = BorderType.Thick;

// Add right border to last column
workSheet["L2:L11"].Style.RightBorder.SetColor("#000000");
workSheet["L2:L11"].Style.RightBorder.Type = BorderType.Medium;

// Create bottom border for data area
workSheet["A11:L11"].Style.BottomBorder.SetColor("#000000");
workSheet["A11:L11"].Style.BottomBorder.Type = BorderType.Medium;

// Apply complete border around summary section
var summaryRange = workSheet["A12:L12"];
summaryRange.Style.TopBorder.Type = BorderType.Double;
summaryRange.Style.BottomBorder.Type = BorderType.Double;
summaryRange.Style.LeftBorder.Type = BorderType.Thin;
summaryRange.Style.RightBorder.Type = BorderType.Thin;
summaryRange.Style.SetBorderColor("#0070C0"); // Blue borders
using IronXL;
using IronXL.Styles;

// Create header border - thick bottom line to separate from data
workSheet["A1:L1"].Style.TopBorder.SetColor("#000000");
workSheet["A1:L1"].Style.TopBorder.Type = BorderType.Thick;
workSheet["A1:L1"].Style.BottomBorder.SetColor("#000000");
workSheet["A1:L1"].Style.BottomBorder.Type = BorderType.Thick;

// Add right border to last column
workSheet["L2:L11"].Style.RightBorder.SetColor("#000000");
workSheet["L2:L11"].Style.RightBorder.Type = BorderType.Medium;

// Create bottom border for data area
workSheet["A11:L11"].Style.BottomBorder.SetColor("#000000");
workSheet["A11:L11"].Style.BottomBorder.Type = BorderType.Medium;

// Apply complete border around summary section
var summaryRange = workSheet["A12:L12"];
summaryRange.Style.TopBorder.Type = BorderType.Double;
summaryRange.Style.BottomBorder.Type = BorderType.Double;
summaryRange.Style.LeftBorder.Type = BorderType.Thin;
summaryRange.Style.RightBorder.Type = BorderType.Thin;
summaryRange.Style.SetBorderColor("#0070C0"); // Blue borders
Imports IronXL
Imports IronXL.Styles

' Create header border - thick bottom line to separate from data
workSheet("A1:L1").Style.TopBorder.SetColor("#000000")
workSheet("A1:L1").Style.TopBorder.Type = BorderType.Thick
workSheet("A1:L1").Style.BottomBorder.SetColor("#000000")
workSheet("A1:L1").Style.BottomBorder.Type = BorderType.Thick

' Add right border to last column
workSheet("L2:L11").Style.RightBorder.SetColor("#000000")
workSheet("L2:L11").Style.RightBorder.Type = BorderType.Medium

' Create bottom border for data area
workSheet("A11:L11").Style.BottomBorder.SetColor("#000000")
workSheet("A11:L11").Style.BottomBorder.Type = BorderType.Medium

' Apply complete border around summary section
Dim summaryRange = workSheet("A12:L12")
summaryRange.Style.TopBorder.Type = BorderType.Double
summaryRange.Style.BottomBorder.Type = BorderType.Double
summaryRange.Style.LeftBorder.Type = BorderType.Thin
summaryRange.Style.RightBorder.Type = BorderType.Thin
summaryRange.Style.SetBorderColor("#0070C0") ' Blue borders
$vbLabelText   $csharpLabel

IronXL unterstützt verschiedene Rahmentypen, darunter Dünn, Mittel, Dick, Doppel, Gepunktet und Gestichelt. Jede Rahmenseite kann unabhängig voneinander gestylt werden.


6. Wie verwende ich Excel-Formeln in C#?

IronXL bietet leistungsstarke Formelunterstützung mit automatischer Berechnung:

// Use built-in aggregation functions for ranges
decimal sum = workSheet["A2:A11"].Sum();
decimal avg = workSheet["B2:B11"].Avg();
decimal max = workSheet["C2:C11"].Max();
decimal min = workSheet["D2:D11"].Min();

// Assign calculated values to cells
workSheet["A12"].Value = sum;
workSheet["B12"].Value = avg;
workSheet["C12"].Value = max;
workSheet["D12"].Value = min;

// Or use Excel formulas directly
workSheet["A12"].Formula = "=SUM(A2:A11)";
workSheet["B12"].Formula = "=AVERAGE(B2:B11)";
workSheet["C12"].Formula = "=MAX(C2:C11)";
workSheet["D12"].Formula = "=MIN(D2:D11)";

// Complex formulas with multiple functions
workSheet["E12"].Formula = "=IF(SUM(E2:E11)>50000,\"Over Budget\",\"On Track\")";
workSheet["F12"].Formula = "=SUMIF(F2:F11,\">5000\")";

// Percentage calculations
workSheet["G12"].Formula = "=G11/SUM(G2:G11)*100";
workSheet["G12"].FormatString = "0.00%";

// Ensure all formulas calculate
workSheet.EvaluateAll();
// Use built-in aggregation functions for ranges
decimal sum = workSheet["A2:A11"].Sum();
decimal avg = workSheet["B2:B11"].Avg();
decimal max = workSheet["C2:C11"].Max();
decimal min = workSheet["D2:D11"].Min();

// Assign calculated values to cells
workSheet["A12"].Value = sum;
workSheet["B12"].Value = avg;
workSheet["C12"].Value = max;
workSheet["D12"].Value = min;

// Or use Excel formulas directly
workSheet["A12"].Formula = "=SUM(A2:A11)";
workSheet["B12"].Formula = "=AVERAGE(B2:B11)";
workSheet["C12"].Formula = "=MAX(C2:C11)";
workSheet["D12"].Formula = "=MIN(D2:D11)";

// Complex formulas with multiple functions
workSheet["E12"].Formula = "=IF(SUM(E2:E11)>50000,\"Over Budget\",\"On Track\")";
workSheet["F12"].Formula = "=SUMIF(F2:F11,\">5000\")";

// Percentage calculations
workSheet["G12"].Formula = "=G11/SUM(G2:G11)*100";
workSheet["G12"].FormatString = "0.00%";

// Ensure all formulas calculate
workSheet.EvaluateAll();
' Use built-in aggregation functions for ranges
Dim sum As Decimal = workSheet("A2:A11").Sum()
Dim avg As Decimal = workSheet("B2:B11").Avg()
Dim max As Decimal = workSheet("C2:C11").Max()
Dim min As Decimal = workSheet("D2:D11").Min()

' Assign calculated values to cells
workSheet("A12").Value = sum
workSheet("B12").Value = avg
workSheet("C12").Value = max
workSheet("D12").Value = min

' Or use Excel formulas directly
workSheet("A12").Formula = "=SUM(A2:A11)"
workSheet("B12").Formula = "=AVERAGE(B2:B11)"
workSheet("C12").Formula = "=MAX(C2:C11)"
workSheet("D12").Formula = "=MIN(D2:D11)"

' Complex formulas with multiple functions
workSheet("E12").Formula = "=IF(SUM(E2:E11)>50000,""Over Budget"",""On Track"")"
workSheet("F12").Formula = "=SUMIF(F2:F11,"">5000"")"

' Percentage calculations
workSheet("G12").Formula = "=G11/SUM(G2:G11)*100"
workSheet("G12").FormatString = "0.00%"

' Ensure all formulas calculate
workSheet.EvaluateAll()
$vbLabelText   $csharpLabel

Die Range Klasse bietet Methoden wie Sum(), Avg(), Max() und Min() für schnelle Berechnungen. Für komplexere Szenarien verwenden Sie die Formula Eigenschaft, um Excel-Formeln direkt festzulegen.


7. Wie ändere ich Arbeitsblatt- und Druckeigenschaften?

Verwenden Sie IronXL, um einzelne Arbeitsblätter zu schützen, Zeilen und Spalten einzufrieren und Druckformatoptionen einzustellen.

7.1. Wie kann ich Arbeitsblatteigenschaften konfigurieren?

Arbeitsblätter schützen und Anzeigeoptionen kontrollieren:

// Protect worksheet with password to prevent unauthorized changes
workSheet.ProtectSheet("SecurePassword123");

// Freeze panes to keep headers visible while scrolling
workSheet.CreateFreezePane(0, 1); // Freeze first row
// workSheet.CreateFreezePane(1, 1); // Freeze first row and column

// Set worksheet visibility options
workSheet.ViewState = WorkSheetViewState.Visible; // or Hidden, VeryHidden

// Configure gridlines and headers
workSheet.ShowGridLines = true;
workSheet.ShowRowColHeaders = true;

// Set zoom level for better viewing
workSheet.Zoom = 85; // 85% zoom
// Protect worksheet with password to prevent unauthorized changes
workSheet.ProtectSheet("SecurePassword123");

// Freeze panes to keep headers visible while scrolling
workSheet.CreateFreezePane(0, 1); // Freeze first row
// workSheet.CreateFreezePane(1, 1); // Freeze first row and column

// Set worksheet visibility options
workSheet.ViewState = WorkSheetViewState.Visible; // or Hidden, VeryHidden

// Configure gridlines and headers
workSheet.ShowGridLines = true;
workSheet.ShowRowColHeaders = true;

// Set zoom level for better viewing
workSheet.Zoom = 85; // 85% zoom
' Protect worksheet with password to prevent unauthorized changes
workSheet.ProtectSheet("SecurePassword123")

' Freeze panes to keep headers visible while scrolling
workSheet.CreateFreezePane(0, 1) ' Freeze first row
' workSheet.CreateFreezePane(1, 1); // Freeze first row and column

' Set worksheet visibility options
workSheet.ViewState = WorkSheetViewState.Visible ' or Hidden, VeryHidden

' Configure gridlines and headers
workSheet.ShowGridLines = True
workSheet.ShowRowColHeaders = True

' Set zoom level for better viewing
workSheet.Zoom = 85 ' 85% zoom
$vbLabelText   $csharpLabel

Arbeitsblattschutz verhindert versehentliche Änderungen, während Einfriefen von Fenstern wichtige Zeilen oder Spalten beim Scrollen sichtbar hält.

Excel-Tabellenkalkulation zeigt eingefrorene Kopfzeile mit Monatsbudgetdaten

Abbildung 7Die gefrorene Kopfzeile bleibt beim Scrollen sichtbar

Excel-Schutz-Dialog erfordert Passwort zum Ändern des geschützten Arbeitsblattes

Abbildung 8Passwortschutz verhindert unberechtigte Bearbeitungen

7.2. Wie konfiguriere ich Seiten- und Druckeinstellungen?

Professionelle Druckoptionen über IronXL einrichten:

using IronXL.Printing;

// Define print area to exclude empty cells
workSheet.SetPrintArea("A1:L12");

// Configure page orientation for wide data
workSheet.PrintSetup.PrintOrientation = PrintOrientation.Landscape;

// Set paper size for standard printing
workSheet.PrintSetup.PaperSize = PaperSize.A4;

// Adjust margins for better layout (in inches)
workSheet.PrintSetup.LeftMargin = 0.5;
workSheet.PrintSetup.RightMargin = 0.5;
workSheet.PrintSetup.TopMargin = 0.75;
workSheet.PrintSetup.BottomMargin = 0.75;

// Configure header and footer
workSheet.PrintSetup.HeaderMargin = 0.3;
workSheet.PrintSetup.FooterMargin = 0.3;

// Scale to fit on one page
workSheet.PrintSetup.FitToPage = true;
workSheet.PrintSetup.FitToHeight = 1;
workSheet.PrintSetup.FitToWidth = 1;

// Add print headers/footers
workSheet.Header.Center = "Monthly Budget Report";
workSheet.Footer.Left = DateTime.Now.ToShortDateString();
workSheet.Footer.Right = "Page &P of &N"; // Page numbering
using IronXL.Printing;

// Define print area to exclude empty cells
workSheet.SetPrintArea("A1:L12");

// Configure page orientation for wide data
workSheet.PrintSetup.PrintOrientation = PrintOrientation.Landscape;

// Set paper size for standard printing
workSheet.PrintSetup.PaperSize = PaperSize.A4;

// Adjust margins for better layout (in inches)
workSheet.PrintSetup.LeftMargin = 0.5;
workSheet.PrintSetup.RightMargin = 0.5;
workSheet.PrintSetup.TopMargin = 0.75;
workSheet.PrintSetup.BottomMargin = 0.75;

// Configure header and footer
workSheet.PrintSetup.HeaderMargin = 0.3;
workSheet.PrintSetup.FooterMargin = 0.3;

// Scale to fit on one page
workSheet.PrintSetup.FitToPage = true;
workSheet.PrintSetup.FitToHeight = 1;
workSheet.PrintSetup.FitToWidth = 1;

// Add print headers/footers
workSheet.Header.Center = "Monthly Budget Report";
workSheet.Footer.Left = DateTime.Now.ToShortDateString();
workSheet.Footer.Right = "Page &P of &N"; // Page numbering
Imports IronXL.Printing

' Define print area to exclude empty cells
workSheet.SetPrintArea("A1:L12")

' Configure page orientation for wide data
workSheet.PrintSetup.PrintOrientation = PrintOrientation.Landscape

' Set paper size for standard printing
workSheet.PrintSetup.PaperSize = PaperSize.A4

' Adjust margins for better layout (in inches)
workSheet.PrintSetup.LeftMargin = 0.5
workSheet.PrintSetup.RightMargin = 0.5
workSheet.PrintSetup.TopMargin = 0.75
workSheet.PrintSetup.BottomMargin = 0.75

' Configure header and footer
workSheet.PrintSetup.HeaderMargin = 0.3
workSheet.PrintSetup.FooterMargin = 0.3

' Scale to fit on one page
workSheet.PrintSetup.FitToPage = True
workSheet.PrintSetup.FitToHeight = 1
workSheet.PrintSetup.FitToWidth = 1

' Add print headers/footers
workSheet.Header.Center = "Monthly Budget Report"
workSheet.Footer.Left = DateTime.Now.ToShortDateString()
workSheet.Footer.Right = "Page &P of &N" ' Page numbering
$vbLabelText   $csharpLabel

Die PrintSetup Klasse bietet umfassende Druckkonfigurationsoptionen, die den Druckeinstellungen von Excel entsprechen.

Excel-Druckvorschau zeigt Landschaftsausrichtung und A4-Papiergrößeneinstellungen

Abbildung 9Druckvorschau mit Landschaftsausrichtung und benutzerdefinierten Rändern


8. Wie speichere ich meine Excel-Arbeitsmappe?

Speichern Sie Ihre Arbeitsmappe in verschiedenen Formaten:

// Save as XLSX (recommended for modern Excel)
workBook.SaveAs("Budget.xlsx");

// Save as XLS for legacy compatibility
workBook.SaveAs("Budget.xls");

// Save as CSV for data exchange
workBook.SaveAsCsv("Budget.csv");

// Save as JSON for web applications
workBook.SaveAsJson("Budget.json");

// Save to stream for web downloads or cloud storage
using (var stream = new MemoryStream())
{
    workBook.SaveAs(stream);
    byte[] excelData = stream.ToArray();
    // Send to client or save to cloud
}

// Save with specific encoding for international characters
workBook.SaveAsCsv("Budget_UTF8.csv", System.Text.Encoding.UTF8);
// Save as XLSX (recommended for modern Excel)
workBook.SaveAs("Budget.xlsx");

// Save as XLS for legacy compatibility
workBook.SaveAs("Budget.xls");

// Save as CSV for data exchange
workBook.SaveAsCsv("Budget.csv");

// Save as JSON for web applications
workBook.SaveAsJson("Budget.json");

// Save to stream for web downloads or cloud storage
using (var stream = new MemoryStream())
{
    workBook.SaveAs(stream);
    byte[] excelData = stream.ToArray();
    // Send to client or save to cloud
}

// Save with specific encoding for international characters
workBook.SaveAsCsv("Budget_UTF8.csv", System.Text.Encoding.UTF8);
' Save as XLSX (recommended for modern Excel)
workBook.SaveAs("Budget.xlsx")

' Save as XLS for legacy compatibility
workBook.SaveAs("Budget.xls")

' Save as CSV for data exchange
workBook.SaveAsCsv("Budget.csv")

' Save as JSON for web applications
workBook.SaveAsJson("Budget.json")

' Save to stream for web downloads or cloud storage
Using stream = New MemoryStream()
	workBook.SaveAs(stream)
	Dim excelData() As Byte = stream.ToArray()
	' Send to client or save to cloud
End Using

' Save with specific encoding for international characters
workBook.SaveAsCsv("Budget_UTF8.csv", System.Text.Encoding.UTF8)
$vbLabelText   $csharpLabel

IronXL unterstützt mehrere Exportformate, darunter XLSX, XLS, CSV, TSV und JSON. Die SaveAs Methode bestimmt automatisch das Format anhand der Dateiendung.

Zusammenfassung

Dieses Tutorial demonstrierte, wie man Excel-Dateien in C# ohne Microsoft Office-Abhängigkeiten mit IronXL erstellt. Sie haben grundlegende Excel-Operationen gelernt, einschließlich Arbeitsmappenerstellung, Zellmanipulation, Formatierung, Formelverwendung und verschiedene Speicheroptionen. Die intuitive API von IronXL macht die Automatisierung von Excel für .NET-Entwickler einfach.

For more advanced features, explore merging cells, and creating charts. Bereit, IronXL in der Produktion zu verwenden? Start your free trial or sehen Sie sich die Lizenzierungsoptionen an.


class="tutorial-segment-title">Tutorial Schneller Zugriff

class="tutorial-section">
class="row">
class="col-sm-4">
class="tutorial-image"> Visual Studio logo
class="col-sm-8">

Laden Sie dieses Tutorial als C# Source Code herunter

Der vollständige C#-Quellcode zur Erstellung von Excel-Dateien ist als Visual Studio Projektdatei verfügbar.

Herunterladen
class="tutorial-section">
class="row">
class="col-sm-8">

Erkunden Sie dieses Tutorial auf GitHub

Der Quellcode für dieses Projekt ist auf GitHub in C# und VB.NET verfügbar.

Verwenden Sie diesen Code als einfachen Einstiegspunkt zur Erstellung von Excel-Dateien in nur wenigen Minuten. Das Projekt ist als Microsoft Visual Studio-Projekt gespeichert, aber mit jeder .NET IDE kompatibel.

Erstellen Sie Excel-Dateien in C# auf GitHub
class="col-sm-4">
class="tutorial-image"> GitHub logo
class="tutorial-section">
class="row">
class="col-sm-4">
class="tutorial-image"> API documentation icon
class="col-sm-8">

Lesen Sie die IronXL API-Referenz

Erkunden Sie die API-Referenz für IronXL, die alle Funktionen, Namespaces, Klassen, Methoden und Eigenschaften für umfassende Excel-Manipulationen in .NET beschreibt.

Sehen Sie sich die API-Referenz an

Häufig gestellte Fragen

Wie kann ich Excel-Dateien in C# ohne Interop erstellen?

Sie können Excel-Dateien ohne Interop mit IronXL erstellen, das eine einfache API bereitstellt: WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX). Dieser Ansatz funktioniert auf jeder .NET-Plattform ohne die Installation von Microsoft Office.

Welche Plattformen werden bei der Erstellung von Excel-Dateien mit C# unterstützt?

IronXL unterstützt die Erstellung von Excel-Dateien auf .NET 10, .NET 9, .NET 8, .NET Core, .NET Framework 4.6.2+, ausgeführt in Windows-, macOS-, Linux-, Docker-, Azure- und AWS-Umgebungen.

Wie installiere ich eine C#-Bibliothek für die Excel-Erstellung?

Installieren Sie IronXL über den NuGet-Paket-Manager in Visual Studio, verwenden Sie den Befehl PM> Install-Package IronXL.Excel oder laden Sie es direkt von nuget.org herunter.

Wie erstelle ich programmgesteuert ein neues Excel-Arbeitsbuch?

Erstellen Sie ein Arbeitsbuch mit IronXL mit WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX) und fügen Sie dann Arbeitsblätter hinzu: workbook.CreateWorkSheet("SheetName").

Wie kann ich Zellwerte in einem Excel-Arbeitsblatt mit C# festlegen?

Legen Sie Zellwerte in IronXL mit intuitiver Syntax fest: worksheet["A1"].Value = "Hello World" oder setzen Sie Bereiche: worksheet["A1:A10"].Value = 100.

Kann ich Zellen in Excel programmgesteuert formatieren?

Ja, IronXL unterstützt umfassende Formatierung einschließlich Hintergrundfarben (cell.Style.SetBackgroundColor("#FF0000")), Rahmen, Schriftarten und Zahlenformate.

Wie verwende ich Excel-Formeln in C#?

Wenden Sie Formeln mit der Formula-Eigenschaft von IronXL an: worksheet["A1"].Formula = "=SUM(B1:B10)", oder verwenden Sie eingebaute Methoden wie range.Sum(), range.Avg().

Wie kann ich ein Excel-Arbeitsblatt mit einem Passwort schützen?

Schützen Sie Arbeitsblätter in IronXL mit worksheet.ProtectSheet("YourPassword"), um unbefugte Änderungen zu verhindern.

Wie konfiguriere ich Druckeinstellungen für Excel-Dateien?

Lege Druckeinstellungen mit IronXLs PrintSetup fest: worksheet.PrintSetup.PrintOrientation = PrintOrientation.Landscape und worksheet.SetPrintArea("A1:Z100").

Wie speichere ich ein Excel-Arbeitsbuch in verschiedenen Formaten?

Speichern Sie Arbeitsmappen mit der SaveAs-Methode von IronXL: workbook.SaveAs("file.xlsx") für XLSX, oder verwenden Sie SaveAsCsv(), SaveAsJson() für andere Formate.

Wie befülle ich ein Excel-Blatt mit Daten aus einer Datenbank?

Verwenden Sie IronXL, um Arbeitsblätter zu befüllen, indem Sie Daten aus einer Datenbank abrufen und diese in Zellen mit Methoden wie worksheet["A1"].Value = dataFromDatabase setzen.

Wie kann ich eingefrorene Fenster in einem Excel-Arbeitsblatt mit C# implementieren?

Frieren Sie Fenster in Arbeitsblättern ein mit IronXL: worksheet.FreezePanes(1, 1), um die oberste Reihe und die linke Spalte für eine einfachere Navigation zu sperren.

Jacob Mellor, Chief Technology Officer @ Team Iron
Chief Technology Officer

Jacob Mellor ist Chief Technology Officer bei Iron Software und ein visionärer Ingenieur, der führend in der C# PDF-Technologie ist. Als ursprünglicher Entwickler der Iron Software-Kerncodebasis hat er die Produktarchitektur des Unternehmens seit seiner Gründung gestaltet und zusammen mit CEO Cameron Rimington in ein Unternehmen ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 1,686,155 | Version: 2025.11 gerade veröffentlicht