Erstellen einer XLSX-Datei in C#;

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

Angesichts des hohen Automatisierungsgrads im Geschäftsleben müssen wir häufig mit Excel-Tabellen in .NET-Anwendungen arbeiten, einschließlich der Erstellung von Tabellenkalkulationen und dem programmgesteuerten Einfügen von Daten. Im folgenden Tutorial werden wir lernen, wie man eine Excel-Tabelle in verschiedenen Formaten erstellt(.xls", "xlsx", "csv" und "tsv"), das Festlegen von Zellformaten und das Einfügen von Daten mit Hilfe der C#-Programmierung.


Wie man XLXL-Dateien in C# erstellt;

  1. Installieren Sie die Excel-Bibliothek, um XLSX-Dateien zu erstellen.

  2. Verwenden Sie das Objekt Workbook, um eine Excel-Datei zu erstellen.

  3. Wählen Sie ein Standard-Arbeitsblatt.

  4. Hinzufügen von Daten zum Standard-Arbeitsblatt.

  5. Speichern Sie die Excel-Datei auf der Festplatte.

    Schritt 1

1. IronXL DLL herunterladen

IronXL bietet den einfachsten Ansatz zur Erstellung von Excel(.xlsx) dateien in C#-Projekten. Die DLL herunterladen oderNuGet-Installation und sie kostenlos für die Entwicklung nutzen.

Install-Package IronXL.Excel

Anleitung zum Tutorial

2. Eine Arbeitsmappe erstellen

Mit dieser Software können wir Daten einfügen und auch Zelleigenschaften wie Schriftarten oder Rahmen festlegen.

2.1 .XLSX-Datei erstellen

Erstellen Sie ein WorkBook mit diesem Code, um eine neue Excel-Datei zu erstellen, die standardmäßig die Erweiterung "xlsx" hat.

/**
Create XLSX File
anchor-create-a-workbook
**/
WorkBook wb = WorkBook.Create();
/**
Create XLSX File
anchor-create-a-workbook
**/
WorkBook wb = WorkBook.Create();
'''
'''Create XLSX File
'''anchor-create-a-workbook
'''*
Dim wb As WorkBook = WorkBook.Create()
VB   C#

2.2 .XLS-Datei erstellen

Wenn Sie eine Datei mit der Erweiterung "xls" erstellen möchten, verwenden Sie:

WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
VB   C#

3. Excel WorkSheet erstellen

Nachdem Sie ein WorkBook im Dateiformat Ihrer Wahl erstellt haben, erstellen Sie ein Excel-WorkSheet. Mit diesem Code wird ein neues Arbeitsblatt ws1 mit dem Namen sheet1 im Arbeitsbuch wb erstellt.

WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
WorkSheet ws1 = wb.CreateWorkSheet("sheet1");
Dim ws1 As WorkSheet = wb.CreateWorkSheet("sheet1")
VB   C#

3.1 Mehrere WorkSheets erstellen

Eine Reihe von Arbeitsblättern kann auf die gleiche Weise erstellt werden:

/**
Create WorkSheets
anchor-create-an-excel-worksheet
**/
WorkSheet ws2 = wb.CreateWorkSheet("sheet2");
WorkSheet ws3 = wb.CreateWorkSheet("sheet3");
/**
Create WorkSheets
anchor-create-an-excel-worksheet
**/
WorkSheet ws2 = wb.CreateWorkSheet("sheet2");
WorkSheet ws3 = wb.CreateWorkSheet("sheet3");
'''
'''Create WorkSheets
'''anchor-create-an-excel-worksheet
'''*
Dim ws2 As WorkSheet = wb.CreateWorkSheet("sheet2")
Dim ws3 As WorkSheet = wb.CreateWorkSheet("sheet3")
VB   C#

4. Daten in WorkSheets einfügen

Jetzt können wir ganz einfach Daten in die Zellen des Arbeitsblatts einfügen.

 worksheet ["CellAddress"].Value = "MyValue";
 worksheet ["CellAddress"].Value = "MyValue";
worksheet ("CellAddress").Value = "MyValue"
VB   C#

4.1 Daten in ein bestimmtes Arbeitsblatt einfügen

Zum Beispiel können Daten im Arbeitsblatt "ws1" gezielt eingefügt werden. Der folgende Code schreibt Hallo World in die Zelle A1 des Arbeitsblatts ws1.

/**
Insert WorkSheet Data
anchor-insert-data-into-worksheets
**/
ws1 ["A1"].Value = "Hello World";
/**
Insert WorkSheet Data
anchor-insert-data-into-worksheets
**/
ws1 ["A1"].Value = "Hello World";
'''
'''Insert WorkSheet Data
'''anchor-insert-data-into-worksheets
'''*
ws1 ("A1").Value = "Hello World"
VB   C#

4.2 Daten in mehrere Zellen einfügen

Es ist auch möglich, Daten mit Hilfe der Bereichsfunktion in viele Zellen zu schreiben. Der folgende Code schreibt "NewValue" von Zelle "A3" nach "A8" in Arbeitsblatt "ws1".

ws1 ["A3:A8"].Value = "NewValue";
ws1 ["A3:A8"].Value = "NewValue";
ws1 ("A3:A8").Value = "NewValue"
VB   C#

5. Ein Beispielprojekt erstellen

Wir erstellen eine neue Excel-Datei "Beispiel.xlsx" und fügen Daten in diese Datei ein.

/**
Sample Project
anchor-make-a-sample-project
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Create();  
    WorkSheet ws1 = wb.CreateWorkSheet("sheet1");                    
    ws1 ["A1"].Value = "Hello";           
    ws1 ["A2"].Value = "World";
    ws1 ["B1:B8"].Value = "RangeValue";
    wb.SaveAs("Sample.xlsx");
}
/**
Sample Project
anchor-make-a-sample-project
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Create();  
    WorkSheet ws1 = wb.CreateWorkSheet("sheet1");                    
    ws1 ["A1"].Value = "Hello";           
    ws1 ["A2"].Value = "World";
    ws1 ["B1:B8"].Value = "RangeValue";
    wb.SaveAs("Sample.xlsx");
}
'''
'''Sample Project
'''anchor-make-a-sample-project
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Create()
	Dim ws1 As WorkSheet = wb.CreateWorkSheet("sheet1")
	ws1 ("A1").Value = "Hello"
	ws1 ("A2").Value = "World"
	ws1 ("B1:B8").Value = "RangeValue"
	wb.SaveAs("Sample.xlsx")
End Sub
VB   C#

Hinweis: Standardmäßig wird die neue Excel-Datei im Ordner bin>Debug des Projekts erstellt. Wenn wir eine neue Datei in einem benutzerdefinierten Pfad erstellen wollen, verwenden Sie:

` wb.SaveAs(@"E:\IronXL\Sample.xlsx");

Hier ist ein Screenshot der neu erstellten Excel-Datei "sample.xlsx":

Doc5 1 related to 5. Ein Beispielprojekt erstellen

Es wird deutlich, wie einfach es ist, Excel-Dateien mit IronXL in Ihrer C#-Anwendung zu erstellen.


6. ExcelMetadaten für Excel-Dateien festlegen

IronXL bietet auch die Funktion, Metadaten für Excel-Dateien zu setzen.

/**
Set Metadata
anchor-set-metadata-for-excel-files
**/
WorkBook wb = WorkBook.Create();
wb.Metadata.Author = "AuthorName";
wb.Metadata.Title="TitleValue";
/**
Set Metadata
anchor-set-metadata-for-excel-files
**/
WorkBook wb = WorkBook.Create();
wb.Metadata.Author = "AuthorName";
wb.Metadata.Title="TitleValue";
'''
'''Set Metadata
'''anchor-set-metadata-for-excel-files
'''*
Dim wb As WorkBook = WorkBook.Create()
wb.Metadata.Author = "AuthorName"
wb.Metadata.Title="TitleValue"
VB   C#

7. Zellenstil einstellen

Es ist sehr einfach, den Zellstil von Excel WorkSheet in Ihrer C#-Anwendung festzulegen. IronXL bietet alle erforderlichen Eigenschaften für die Gestaltung von Zellen.

7.1. Schriftstil einstellen

Der Schriftstil kann wie folgt eingestellt werden:

/**
Set Font Style
anchor-set-font-style
**/
WorkSheet ["CellAddress"].Style.Font.Bold =true;
WorkSheet ["CellAddress"].Style.Font.Italic =true;
/**
Set Font Style
anchor-set-font-style
**/
WorkSheet ["CellAddress"].Style.Font.Bold =true;
WorkSheet ["CellAddress"].Style.Font.Italic =true;
'''
'''Set Font Style
'''anchor-set-font-style
'''*
WorkSheet ("CellAddress").Style.Font.Bold =True
WorkSheet ("CellAddress").Style.Font.Italic =True
VB   C#

7.2. Strikeout hinzufügen

Das Durchstreichen eines beliebigen Zellwertes kann wie folgt erfolgen:

/**
Add Strikeout
anchor-add-strikeout
**/
WorkSheet ["CellAddress"].Style.Font.Strikeout = true;
/**
Add Strikeout
anchor-add-strikeout
**/
WorkSheet ["CellAddress"].Style.Font.Strikeout = true;
'''
'''Add Strikeout
'''anchor-add-strikeout
'''*
WorkSheet ("CellAddress").Style.Font.Strikeout = True
VB   C#

7.3. Umrandungsstil festlegen

Die Gestaltung des Rahmens kann mit folgendem Code erfolgen:

/**
Set Border Style
anchor-set-border-style
**/
WorkSheet ["CellAddress"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
/**
Set Border Style
anchor-set-border-style
**/
WorkSheet ["CellAddress"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
'''
'''Set Border Style
'''anchor-set-border-style
'''*
WorkSheet ("CellAddress").Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted
VB   C#

8. Cell Styling Beispielprojekt anwenden

Sehen wir uns an, wie man mehrere Zellstile festlegt und alles zusammenbringt, indem wir das folgende Beispielprojekt verwenden.

/**
Sample Cell Styling Set
anchor-apply-cell-styling-sample-project
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Create();                     
    WorkSheet ws = wb.CreateWorkSheet("sheet1");

    ws ["A1"].Value = "MyVal";
    ws ["B2"].Value = "Hello World";

    ws ["A1"].Style.Font.Strikeout = true;

    ws ["B2"].Style.Font.Bold =true;
    ws ["B2"].Style.Font.Italic =true;

    ws ["C3"].Style.TopBorder.Type = IronXL.Styles.BorderType.Double;        
    ws ["C3"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
    ws ["C3"].Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick;
    ws ["C3"].Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot;
    ws ["C3"].Style.BottomBorder.SetColor("#ff6600");
    ws ["C3"].Style.TopBorder.SetColor("#ff6600");
    wb.SaveAs("Sample.xlsx");
}
/**
Sample Cell Styling Set
anchor-apply-cell-styling-sample-project
**/
using IronXL;
static void Main(string [] args)
{
    WorkBook wb = WorkBook.Create();                     
    WorkSheet ws = wb.CreateWorkSheet("sheet1");

    ws ["A1"].Value = "MyVal";
    ws ["B2"].Value = "Hello World";

    ws ["A1"].Style.Font.Strikeout = true;

    ws ["B2"].Style.Font.Bold =true;
    ws ["B2"].Style.Font.Italic =true;

    ws ["C3"].Style.TopBorder.Type = IronXL.Styles.BorderType.Double;        
    ws ["C3"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted;
    ws ["C3"].Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick;
    ws ["C3"].Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot;
    ws ["C3"].Style.BottomBorder.SetColor("#ff6600");
    ws ["C3"].Style.TopBorder.SetColor("#ff6600");
    wb.SaveAs("Sample.xlsx");
}
'''
'''Sample Cell Styling Set
'''anchor-apply-cell-styling-sample-project
'''*
Imports IronXL
Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Create()
	Dim ws As WorkSheet = wb.CreateWorkSheet("sheet1")

	ws ("A1").Value = "MyVal"
	ws ("B2").Value = "Hello World"

	ws ("A1").Style.Font.Strikeout = True

	ws ("B2").Style.Font.Bold =True
	ws ("B2").Style.Font.Italic =True

	ws ("C3").Style.TopBorder.Type = IronXL.Styles.BorderType.Double
	ws ("C3").Style.BottomBorder.Type = IronXL.Styles.BorderType.Dotted
	ws ("C3").Style.LeftBorder.Type = IronXL.Styles.BorderType.Thick
	ws ("C3").Style.RightBorder.Type = IronXL.Styles.BorderType.SlantedDashDot
	ws ("C3").Style.BottomBorder.SetColor("#ff6600")
	ws ("C3").Style.TopBorder.SetColor("#ff6600")
	wb.SaveAs("Sample.xlsx")
End Sub
VB   C#

Und hier ist ein Screenshot unserer neu erstellten Excel-Datei "sample.xlsx".

Doc5 2 related to 8. Cell Styling Beispielprojekt anwenden

9. Nächste Schritte und Excel-Tutorial

Wenn Sie tiefer eintauchen und eine Schritt-für-Schritt-Anleitung für die Erstellung von .NET Excel lesen möchten, lesen Sie dieErstellen von Excel-Dateien mit C#-Tutorial.


Tutorial Schnellzugriff

Documentation related to Tutorial Schnellzugriff

Eintauchen in die API-Referenz

Lesen Sie die Dokumentation zu IronXL, mit Erklärungen zu allen Namespaces, Featuresets, Klassen, Methoden, Feldern und Enums von IronXL.

Ansicht der API-Referenz