Wie man mit C# in Excel-Dateien in .NET schreibt

Schreiben von Excel .NET-Funktionen in C# mit IronXL

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

Schreiben Sie Excel-Daten in C# mit IronXL, indem Sie auf Arbeitsblätter zugreifen, Zellwerte mit einfacher Klammerschreibweise festlegen und Änderungen speichern. Die Bibliothek unterstützt das Schreiben in bestimmte Zellen, Bereiche und das programmatische Ersetzen von Werten ohne komplexen Code.

C#-Anwendungen müssen häufig Dateien aktualisieren und neue Daten in Excel-Tabellen programmatisch schreiben. Die .NET-Funktionen von Excel können manchmal kompliziert sein, aber mit der IronXL-Bibliothek ist diese Aufgabe ganz einfach und ermöglicht die Arbeit mit Excel-Tabellen in jedem Format. Direkter Zugriff auf bestimmte Zellen und Zuweisung benutzerdefinierter Werte mit minimalem Code. Ob Sie neue Tabellenblätter erstellen oder vorhandene Excel-Dateien bearbeiten, IronXL bietet intuitive Methoden für alle Ihre Excel-Automatisierungsanforderungen.

als-überschrift:2(Schnellstart: Einen Wert in eine spezifische Zelle schreiben)

Dieses Beispiel zeigt, wie man mit IronXL einen Wert in eine einzelne Zelle schreibt und die Excel-Datei in nur wenigen Zeilen speichert.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronXL mit dem NuGet-Paketmanager.

    PM > Install-Package IronXL.Excel

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    worksheet["A1"].Value = "Hello, IronXL!";
    workbook.SaveAs("output.xlsx");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronXL in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer

Excel .NET-Anleitungen schreiben

  • Laden Sie die Bibliothek für Excel .NET herunter
  • Werte in bestimmten Zellen schreiben
  • Statische Werte in mehreren Zellen schreiben
  • Dynamische Werte im Zellbereich schreiben
  • Zellwerte in bestimmter Zeile, Spalte, Bereich und mehr ersetzen
How To Work related to Schreiben von Excel .NET-Funktionen in C# mit IronXL

Wie kann ich auf Excel-Dateien zugreifen?

Beginnen Sie mit dem Zugriff auf die Excel-Datei, in die Sie Daten schreiben möchten. Öffnen Sie die Excel-Datei in Ihrem Projekt und öffnen Sie dann das entsprechende Arbeitsblatt mit dem folgenden Code.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-load-file.cs
// Load Excel file in the project
WorkBook workBook = WorkBook.Load("path");
' Load Excel file in the project
Dim workBook As WorkBook = WorkBook.Load("path")
$vbLabelText   $csharpLabel

Oben wird die angegebene Excel-Datei geöffnet. Rufen Sie nun das Arbeitsblatt auf.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-get-sheet.cs
// Open Excel WorkSheet
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");
' Open Excel WorkSheet
Dim workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")
$vbLabelText   $csharpLabel

Das Excel-Arbeitsblatt öffnet sich in workSheet und Sie können es verwenden, um jede Art von Daten in die Excel-Datei zu schreiben. Erfahren Sie mehr über das Laden von Excel-Dateien und den Zugriff auf Arbeitsblätter auf verschiedene Weise anhand der Beispiele im Link. Für die Arbeit mit mehreren Arbeitsblättern lesen Sie unseren Leitfaden zur Verwaltung von Arbeitsblättern, der das programmgesteuerte Hinzufügen, Umbenennen und Löschen von Arbeitsblättern behandelt.

Hinweis: Vergessen Sie nicht, die Referenz zu IronXL in Ihrem Projekt hinzuzufügen und die Bibliothek zu importieren, indem Sie using IronXL verwenden.


Wie schreibe ich einen Wert in eine bestimmte Zelle?

Sie können in einer Excel-Datei mit vielen verschiedenen Methoden schreiben, aber der grundlegende Ansatz verwendet ExcelCell. Zu diesem Zweck kann jede Zelle des geöffneten Excel-Arbeitsblatts angesprochen werden und ein Wert darin wie folgt geschrieben werden:

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell.cs
workSheet["Cell Address"].Value="Assign the Value";
workSheet("Cell Address").Value="Assign the Value"
$vbLabelText   $csharpLabel

Hier ist ein Beispiel für die Verwendung der oben genannten Funktion, um in eine Excel-Zelle in Ihrem C#-Projekt zu schreiben.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-full.cs
using IronXL;

// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Access A1 cell and write the value
workSheet["A1"].Value = "new value";

// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL

' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")

' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Access A1 cell and write the value
Private workSheet("A1").Value = "new value"

' Save changes
workBook.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Dieser Code schreibt den neuen Wert in die Zelle A1 des Arbeitsblatts Sheet1 in der Excel-Datei sample.xlsx. Auf die gleiche Weise können Sie Werte in jede beliebige Zelladresse einer Excel-Datei einfügen. Für weitergehende Formatierungsoptionen, wie das Einstellen von Zellenschriften und -größen oder das Anwenden von Hintergrundfarben und -mustern, bietet IronXL umfassende Styling-Funktionen.

Hinweis: Vergessen Sie nicht, die Excel-Datei nach dem Schreiben neuer Werte in das Arbeitsblatt, wie im obigen Beispiel gezeigt, zu speichern.

Warum sollte ich die Zuweisung exakter Werte erzwingen?

Wenn die Wert-Eigenschaft gesetzt wird, versucht IronXL, sie in den entsprechenden Werttyp zu konvertieren. Manchmal ist diese Auswertung unerwünscht, da Sie der Zelle den genauen Wert ohne Konvertierung zuweisen möchten. Um dies zu tun, weisen Sie den Wert als Zeichenfolge zu. In IronXL verwenden Sie einfach StringValue anstatt Value, um denselben Effekt zu erzielen.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-stringvalue.cs
// Assign value as string
workSheet["A1"].StringValue = "4402-12";
' Assign value as string
workSheet("A1").StringValue = "4402-12"
$vbLabelText   $csharpLabel

Wie schreibe ich statische Werte in einen Bereich?

Sie können neue Werte in mehrere Zellen, die als Bereich bezeichnet werden, wie folgt schreiben:

// Assign a static value to a range of cells
worksheet["B2:C5"].Value = "static value";
// Assign a static value to a range of cells
worksheet["B2:C5"].Value = "static value";
' Assign a static value to a range of cells
worksheet("B2:C5").Value = "static value"
$vbLabelText   $csharpLabel

Auf diese Weise geben Sie den Bereich der Zellen Von bis Bis an, in den die Daten geschrieben werden sollen. Der neue Wert wird in alle Zellen innerhalb dieses Bereichs geschrieben. Um mehr über C# Excel Range zu verstehen, schauen Sie sich die Beispiele hier an.

Anhand des folgenden Beispiels können Sie sehen, wie man einen Bereich in Aktion schreibt.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-cell-range-full.cs
using IronXL;

// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Specify range row wise and write new value
workSheet["B2:B9"].Value = "new value";

// Specify range column wise and write new value
workSheet["C3:C7"].Value = "new value";

// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL

' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")

' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Specify range row wise and write new value
Private workSheet("B2:B9").Value = "new value"

' Specify range column wise and write new value
Private workSheet("C3:C7").Value = "new value"

' Save changes
workBook.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Dieser Code schreibt einen neuen Wert von B2 nach C5 in das Arbeitsblatt Sheet1 der Excel-Datei sample.xlsx. Es verwendet statische Werte für die Excel-Zellen.


Wie schreibe ich dynamische Werte in einen Bereich?

Sie können auch dynamische Werte zu einem Bereich hinzufügen, wie unten gezeigt. Dies ist besonders nützlich, wenn Sie Daten aus einer Datenbank einfügen oder Berichte erstellen müssen. Sie können auch Importieren und Exportieren als DataSet für komplexere Datenoperationen erkunden.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-assign-dynamic-value.cs
using IronXL;

// Load Excel file
WorkBook workBook = WorkBook.Load("sample.xlsx");

// Open WorkSheet of sample.xlsx
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Specify range in which we want to write the values
for (int i = 2; i <= 7; i++)
{
    // Write the Dynamic value in one row
    workSheet["B" + i].Value = "Value" + i;

    // Write the Dynamic value in another row
    workSheet["D" + i].Value = "Value" + i;
}

// Save changes
workBook.SaveAs("sample.xlsx");
Imports IronXL

' Load Excel file
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")

' Open WorkSheet of sample.xlsx
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Specify range in which we want to write the values
For i As Integer = 2 To 7
	' Write the Dynamic value in one row
	workSheet("B" & i).Value = "Value" & i

	' Write the Dynamic value in another row
	workSheet("D" & i).Value = "Value" & i
Next i

' Save changes
workBook.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Der obige Code schreibt dynamische Werte in die Spalten B von 2 bis 7 in der Excel-Datei sample.xlsx. Sie können das Ergebnis des Codes auf sample.xlsx sehen.

Tabellenkalkulation mit zwei hervorgehobenen Bereichen B2:B7 und D2:D7, die mit Value2 bis Value7 gefüllt sind

Wie kann ich Excel-Zellenwerte ersetzen?

Mit IronXL können Sie ganz einfach einen neuen Wert schreiben, um den alten Wert zu ersetzen, indem Sie die Replace()-Funktion wie folgt verwenden:

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace.cs
workSheet.Replace("old value", "new value");
workSheet.Replace("old value", "new value")
$vbLabelText   $csharpLabel

Die obige Funktion schreibt einen neuen Wert und überschreibt den alten Wert im gesamten Excel-Arbeitsblatt.

Wie kann ich Werte in einer bestimmten Zeile ersetzen?

Wenn Sie einen neuen Wert nur in eine bestimmte Zeile schreiben möchten, gehen Sie wie folgt vor:

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-row.cs
workSheet.Rows[RowIndex].Replace("old value", "new value");
workSheet.Rows(RowIndex).Replace("old value", "new value")
$vbLabelText   $csharpLabel

Dies schreibt den neuen Wert über den alten Wert in nur den angegebenen Zeilenindex.

Wie kann ich Werte in einer bestimmten Spalte ersetzen?

Wenn Sie den neuen Wert über den alten Wert in einer bestimmten Spalte schreiben möchten, gehen Sie wie folgt vor:

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-column.cs
workSheet.Columns[ColumnIndex].Replace("old value", "new Value");
workSheet.Columns(ColumnIndex).Replace("old value", "new Value")
$vbLabelText   $csharpLabel

Der obige Code schreibt den neuen Wert, um den alten Wert zu ersetzen, aber nur in den angegebenen Spaltenindex. Der Rest des Arbeitsblatts bleibt gleich.

Wie kann ich Werte in einem bestimmten Bereich ersetzen?

IronXL bietet auch eine Möglichkeit, einen neuen Wert zu schreiben, um den alten Wert nur in einem bestimmten Bereich zu ersetzen. Dies ist hilfreich, wenn Sie mit bestimmten Datenbereichen arbeiten oder wenn Sie Werte in einem bestimmten Abschnitt Ihrer Kalkulationstabelle aktualisieren müssen. Weitere fortgeschrittene Bereichsoperationen finden Sie in unserer Anleitung zum Sortieren von Zellbereichen.

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-range.cs
workSheet["From Cell Address : To Cell Address"].Replace("old value", "new value");
workSheet("From Cell Address : To Cell Address").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Dies schreibt den neuen Wert über den alten Wert, nur in die Zellen innerhalb des angegebenen Bereichs.

Sehen Sie sich das Beispiel an, wie Sie alle oben genannten Funktionen verwenden, um neue Werte zu schreiben und alte Werte in einem Excel-Arbeitsblatt zu ersetzen.

Wie sieht ein vollständiges Ersetzungsbeispiel aus?

:path=/static-assets/excel/content-code-examples/how-to/write-excel-net-replace-full.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.GetWorkSheet("Sheet1");

// Write new above old in complete WorkSheet
workSheet.Replace("old", "new");

// Write new above old just in row no 6 of WorkSheet
workSheet.Rows[5].Replace("old", "new");

// Write new above old just in column no 5 of WorkSheet
workSheet.Columns[4].Replace("old", "new");

// Write new above old just from A5 to H5 of WorkSheet
workSheet["A5:H5"].Replace("old", "new");

workBook.SaveAs("sample.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.GetWorkSheet("Sheet1")

' Write new above old in complete WorkSheet
workSheet.Replace("old", "new")

' Write new above old just in row no 6 of WorkSheet
workSheet.Rows(5).Replace("old", "new")

' Write new above old just in column no 5 of WorkSheet
workSheet.Columns(4).Replace("old", "new")

' Write new above old just from A5 to H5 of WorkSheet
workSheet("A5:H5").Replace("old", "new")

workBook.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Für weitere Informationen darüber, wie Sie Excel .NET-Anwendungen schreiben und mehr, schauen Sie sich unser vollständiges Tutorial darüber an, wie Sie Excel-Dateien öffnen und schreiben können. Wenn Sie mit verschiedenen Dateiformaten arbeiten, finden Sie vielleicht auch unseren Leitfaden zur Konvertierung von Tabellenkalkulationsdateien hilfreich.


Tutorial Schnellzugriff

API-Referenz lesen

Lesen Sie die IronXL-Dokumentation mit Listen aller Funktionen, Features, Namespaces, Klassen und Enums, die Ihnen in der Bibliothek zur Verfügung stehen.

API-Referenz lesen
Documentation related to Tutorial Schnellzugriff

Häufig gestellte Fragen

Wie schreibe ich mit C# einen Wert in eine bestimmte Zelle in einer Excel-Datei?

Mit IronXL können Sie in eine bestimmte Zelle schreiben, indem Sie einfach mit der Klammerschreibweise auf die Zelle zugreifen und ihre Werteigenschaft festlegen. Zum Beispiel: worksheet["A1"].Value = "Hallo, IronXL!"; dann speichern Sie die Arbeitsmappe mit workbook.SaveAs("output.xlsx"). Durch diesen einfachen Ansatz entfällt die Notwendigkeit für komplexen Excel-Interop-Code.

Was ist der erste Schritt, um Daten programmatisch in eine Excel-Datei zu schreiben?

Der erste Schritt besteht darin, Ihre Excel-Datei mit der Methode WorkBook.Load() von IronXL zu laden und dann auf das spezifische Arbeitsblatt zuzugreifen, in das Sie Daten schreiben möchten. IronXL vereinfacht dies mit intuitiven Methoden, mit denen Sie jedes Excel-Format öffnen und sofort mit Zellen und Bereichen arbeiten können.

Kann ich in Excel Daten in mehrere Zellen auf einmal schreiben?

Ja, IronXL unterstützt das effiziente Schreiben in mehrere Zellen. Sie können statische Werte in mehrere spezifische Zellen einzeln schreiben oder Zellbereiche verwenden, um dynamische Werte programmatisch in mehrere Zellen zu schreiben. Die Bibliothek bietet Methoden sowohl für Einzelzellenoperationen als auch für das Schreiben von Massendaten.

Wie ersetze ich vorhandene Zellwerte in einer Excel-Tabelle?

Mit IronXL können Sie Zellwerte ersetzen, indem Sie einfach auf die Zelle zugreifen und ihr einen neuen Wert zuweisen. Sie können Werte in bestimmten Zeilen, Spalten oder Bereichen ersetzen. Die Bibliothek sorgt automatisch für das Überschreiben vorhandener Daten, wenn Sie den Zellen neue Werte zuweisen.

Welche Excel-Dateiformate werden für das Schreiben von Daten unterstützt?

IronXL unterstützt das Schreiben in alle gängigen Excel-Dateiformate, einschließlich .xlsx, .xls, .xlsm und CSV-Dateien. Die Bibliothek behandelt formatspezifische Anforderungen automatisch, so dass Sie mit Excel-Tabellen in jedem Format arbeiten können, ohne Ihren Codeansatz zu ändern.

Muss ich Microsoft Excel installiert haben, um Excel-Dateien in C# zu schreiben?

Nein, IronXL arbeitet unabhängig und benötigt weder Microsoft Excel noch Office Interop. Es handelt sich um eine eigenständige .NET-Bibliothek, die Excel-Dateien auf jedem System programmatisch lesen, schreiben und erstellen kann, was sie perfekt für Serveranwendungen und Umgebungen macht, in denen Excel nicht installiert ist.

Wie kann ich Änderungen speichern, nachdem ich Daten in eine Excel-Datei geschrieben habe?

Nachdem Sie Daten in Zellen geschrieben haben, speichern Sie Ihre Änderungen mit der SaveAs()-Methode von IronXL, um eine neue Datei zu erstellen, oder mit Save(), um die bestehende Datei zu überschreiben. Die Bibliothek stellt sicher, dass alle Zellaktualisierungen, Formatierungen und Formeln ordnungsgemäß in dem von Ihnen angegebenen Excel-Dateiformat gespeichert werden.

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 ...

Weiterlesen
Bereit anzufangen?
Nuget Downloads 1,765,830 | Version: 2025.12 gerade veröffentlicht