Wie man Excel-Dateien in C# bearbeitet

C# Excel-Datei bearbeiten

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

Bearbeiten Sie Excel-Dateien in C# mit der IronXL-Bibliothek, die einfache Methoden zum programmatischen Ändern von Zellen, Zeilen, Spalten und Arbeitsblättern ohne Excel-Interop bietet und so Fehler und Komplexität reduziert.

Entwickler benötigen Präzision bei der Änderung von Excel-Dateien in C#, da ein Fehler ganze Dokumente beschädigen kann. Einfacher, effizienter Code verringert das Fehlerrisiko und vereinfacht das programmatische Bearbeiten oder Löschen von Excel-Dateien. IronXL bietet eine umfassende Lösung für die Arbeit mit Excel-Dateien in C#, die die Abhängigkeiten von Microsoft Office eliminiert. Dieses Handbuch behandelt die Schritte zur korrekten und schnellen Bearbeitung von Excel-Dateien in C# unter Verwendung getesteter Funktionen.

Schnellstart: Bearbeiten Sie einen bestimmten Zellwert mit IronXL

Dieses Beispiel zeigt, wie man eine bestehende Excel-Datei lädt, eine einzelne Zelle aktualisiert und die Änderungen mit IronXL speichert. Starten Sie in weniger als 5 Zeilen, ohne Interop erforderlich. Für komplexe Vorgänge lesen Sie bitte unsere umfassende API-Referenz.

  1. Installieren Sie IronXL mit NuGet Package Manager

    PM > Install-Package IronXL.Excel
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL";
    // then save your workbook
    iroExcelWorkBook.SaveAs("file.xlsx");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronXL in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer

Schritt 1

Wie richte ich IronXL für die Bearbeitung von C# Excel ein?

Dieses Tutorial verwendet IronXL, eine C#-Excel-Bibliothek. Laden Sie es herunter und installieren Sie es in Ihrem Projekt (kostenlos für Entwickler), um diese Funktionen zu nutzen. IronXL unterstützt verschiedene Plattformen, darunter Linux und macOS, und ist damit vielseitig für die plattformübergreifende Entwicklung einsetzbar.

You can either Download IronXL.zip or read more and install via the NuGet package page.

Sobald es installiert ist, lassen Sie uns beginnen. Neu bei IronXL? Eine umfassende Einführung finden Sie in unserer Übersicht für den Einstieg.


Install-Package IronXL.Excel

Ersetzen Sie x.x.x bei Bedarf durch die entsprechende Versionsnummer.


Anleitung zum Tutorial

Wie kann ich bestimmte Zellwerte in Excel bearbeiten?

Lernen Sie zunächst, wie Sie bestimmte Zellwerte in einer Excel-Tabelle bearbeiten können SpreadSheet. Dies ist eine der häufigsten Operationen beim Bearbeiten von Excel-Dateien in C#.

Importieren Sie die Excel-Datei SpreadSheet, um sie zu bearbeiten, und greifen Sie dann auf ihre WorkSheet zu. Nehmen Sie Änderungen wie unten gezeigt vor. IronXL bietet mehrere Möglichkeiten, auf Zellen zuzugreifen, und ist damit flexibel für verschiedene Programmierstile.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-specific-cell-value.cs
using IronXL;

// Load the Excel workbook
WorkBook wb = WorkBook.Load("sample.xlsx");
// Access a specific worksheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Access specific cell by identifying its row and column, then modify its value
ws.Rows[3].Columns[1].Value = "New Value";
// Save changes to the workbook
wb.SaveAs("sample.xlsx");
Imports IronXL

' Load the Excel workbook
Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
' Access a specific worksheet
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Access specific cell by identifying its row and column, then modify its value
ws.Rows(3).Columns(1).Value = "New Value"
' Save changes to the workbook
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Hier sind Vorher-Nachher-Screenshots von Excel SpreadSheet sample.xlsx:

Vorher Nachher
Excel-Tabelle mit markierter Zelle, die Excel-Zelle B4 mit der Anzeige

Beachten Sie, wie einfach es ist, den Excel-Wert SpreadSheet zu ändern. Dieser Ansatz eignet sich gut, um bestimmte Datenpunkte zu aktualisieren, ohne den Rest der Tabelle zu beeinträchtigen.

Eine alternative Möglichkeit, bestimmte Zellwerte anhand der Zelladresse zu bearbeiten:

// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
' Alternative way to access specific cell and apply changes
ws("B4").Value = "New Value"
$vbLabelText   $csharpLabel

Wie bearbeite ich vollständige Zeilenwerte in Excel?

Bearbeiten Sie die Werte ganzer Zeilen eines Excel-SpreadSheet-Dokuments ganz einfach mit einem statischen Wert. Dieser Vorgang ist hilfreich, wenn ganze Datensätze auf einmal aktualisiert werden, z. B. beim Zurücksetzen von Daten oder bei der Anwendung von Massenaktualisierungen. Für komplexe Zeilenoperationen, erkunden Sie Zeilen und Spalten hinzufügen.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-row-value.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire row
ws.Rows[3].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire row
ws.Rows(3).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Siehe die Screenshots von sample.xlsx unten:

Vorher Nachher
Excel-Tabelle mit markierter Zeile 4, die Daten zum Regierungssegment für Frankreich mit dem Produkt Montana zeigt Excel-Tabelle mit einer neuen Zeile, in der in allen Spalten einer Vertriebsdatentabelle Einträge mit dem Wert

Bearbeiten Sie Werte eines bestimmten Bereichs innerhalb einer Zeile mit der Funktion range:

// Editing a specific range of a row
ws["A3:E3"].Value = "New Value";
// Editing a specific range of a row
ws["A3:E3"].Value = "New Value";
' Editing a specific range of a row
ws("A3:E3").Value = "New Value"
$vbLabelText   $csharpLabel

Wenn Sie mit Bereichen arbeiten, benötigen Sie möglicherweise auch Auswahlbereiche für fortgeschrittene Operationen wie Sortierung oder Anwendung von Formeln.


Wie bearbeite ich vollständige Spaltenwerte in Excel?

Bearbeiten Sie ganze Spalten mit Excel-SpreadSheet-Werten ganz einfach mit einem einzigen Wert. Dies eignet sich gut für Szenarien wie die Aktualisierung von Währungsspalten, die Anwendung neuer Steuersätze oder die Standardisierung von Datenformaten für eine ganze Spalte.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-column.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire column
ws.Columns[1].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire column
ws.Columns(1).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Dies ergibt unsere sample.xlsx-Tabelle wie folgt:

Vorher Nachher
Excel-Tabelle mit blau hervorgehobener Spalte Excel-Tabelle, in der Spalte B nach einer Massenbearbeitung der Spalten mit dem Text

Wie bearbeite ich eine vollständige Zeile mit dynamischen Werten?

IronXL ermöglicht die Bearbeitung bestimmter Zeilen mit dynamischen Werten. Bearbeiten Sie eine ganze Zeile, indem Sie dynamische Werte für jede Zelle zuweisen. Dieser Ansatz eignet sich gut für den Import von Daten aus Datenbanken oder anderen Quellen, die eindeutige Werte pro Zelle erfordern. Siehe das Beispiel:

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-row-dynamic.cs
using IronXL;
using System.Linq;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
for (int i = 0; i < ws.Columns.Count(); i++)
{
    // Assign dynamic values to each cell in the row
    ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
}
wb.SaveAs("sample.xlsx");
Imports IronXL
Imports System.Linq

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
For i As Integer = 0 To ws.Columns.Count() - 1
    ' Assign dynamic values to each cell in the row
    ws.Rows(3).Columns(i).Value = "New Value " & i.ToString()
Next
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Die folgende Tabelle zeigt Screenshots von Excel SpreadSheet sample.xlsx aus dieser Ausgabe:

Vorher Nachher
Excel-Tabelle mit markierter Zeile 4, die Daten des Enterprise-Segments vor der Bearbeitung mit dynamischen Werten zeigt Excel-Tabelle, in der Zeile 4 nach einer dynamischen Zeilenbearbeitung den Platzhaltertext

Wie bearbeite ich eine vollständige Spalte mit dynamischen Werten?

Bearbeiten Sie bestimmte Spalten mit dynamischen Werten einfach. Diese Technik hilft beim Auffüllen von Spalten mit sequentiellen Daten wie ID-Nummern, Daten oder berechneten Werten auf der Grundlage der Zeilenposition.

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-full-column-dynamic.cs
using IronXL;
using System.Linq;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
for (int i = 0; i < ws.Rows.Count(); i++)
{
    // Skip the first row if it's used as a header
    if (i == 0)
        continue;
    // Assign dynamic values to each cell in the column
    ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
}
wb.SaveAs("sample.xlsx");
Imports IronXL
Imports System.Linq

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
For i As Integer = 0 To ws.Rows.Count() - 1
    ' Skip the first row if it's used as a header
    If i = 0 Then
        Continue For
    End If
    ' Assign dynamic values to each cell in the column
    ws.Rows(i).Columns(1).Value = "New Value " & i.ToString()
Next
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Mit den Tabellenergebnissen von sample.xlsx unten:

Vorher Nachher
Excel-Tabelle mit hervorgehobener Spalte Excel-Tabelle, in der die Spalte

Wie ersetze ich Tabellenkalkulationswerte in Excel?

Ersetzen Sie jeden Werttyp in einer Excel-Datei SpreadSheet durch einen aktualisierten Wert unter Verwendung der Funktion Replace. Verwenden Sie diese Funktion, um Excel-Daten SpreadSheet in jeder erforderlichen Situation zu ersetzen. Dies eignet sich gut für die Bereinigung von Daten, die Aktualisierung von Terminologie oder die Korrektur systematischer Fehler in Tabellenkalkulationen.

Wie kann ich Werte in einem ganzen Arbeitsblatt ersetzen?

Um einen bestimmten Wert in einer gesamten Excel-Datei SpreadSheet durch einen aktualisierten Wert zu ersetzen, rufen Sie die Funktion WorkSheet ws (wie in den obigen Beispielen) auf und wenden Sie die Funktion Replace an:

// Replace a specific value in the entire worksheet
ws.Replace("old value", "new value");
// Replace a specific value in the entire worksheet
ws.Replace("old value", "new value");
' Replace a specific value in the entire worksheet
ws.Replace("old value", "new value")
$vbLabelText   $csharpLabel

Diese Funktion ersetzt old value durch new value in einer vollständigen Excel-Datei SpreadSheet. Es handelt sich um eine leistungsstarke Funktion für Massenaktualisierungen, die sonst manuelle Such- und Ersetzungsvorgänge in Excel erfordern würden.

Denken Sie daran, die Datei nach jeder Änderung zu speichern, wie in den obigen Beispielen gezeigt. Weitere Informationen zum Speichern und Exportieren von Excel-Dateien finden Sie in unserem Leitfaden zum Konvertieren von Tabellenkalkulationsdateien.

Wie kann ich Werte in einer bestimmten Zeile ersetzen?

Um Änderungen an einer bestimmten Zeile und nicht am gesamten Arbeitsblatt vorzunehmen, verwenden Sie diesen Code:

// Replace a specific value in a specific row
ws.Rows[2].Replace("old value", "new value");
// Replace a specific value in a specific row
ws.Rows[2].Replace("old value", "new value");
' Replace a specific value in a specific row
ws.Rows(2).Replace("old value", "new value")
$vbLabelText   $csharpLabel

Der obige Code ersetzt old value durch new value nur in Zeile 2. Der Rest von WorkSheet bleibt unverändert.

Wie kann ich Werte in einem Zeilenbereich ersetzen?

Ersetzen Sie Werte innerhalb eines bestimmten Bereichs wie folgt:

// Replace specific values in a row range
ws["From Cell Address : To Cell Address"].Replace("old value", "new value");
// Replace specific values in a row range
ws["From Cell Address : To Cell Address"].Replace("old value", "new value");
' Replace specific values in a row range
ws("From Cell Address : To Cell Address").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Um einen alten Wert durch einen neuen Wert im Bereich von B4 bis E4 der Zeilennummer 4 zu ersetzen, schreiben Sie:

ws["B4:E4"].Replace("old value", "new value");
ws["B4:E4"].Replace("old value", "new value");
ws("B4:E4").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Wie kann ich Werte in einer bestimmten Spalte ersetzen?

Ersetzen Sie die Werte einer bestimmten Spalte, während der Rest des Arbeitsblatts unverändert bleibt:

// Replace specific values in a column
ws.Columns[1].Replace("old value", "new value");
// Replace specific values in a column
ws.Columns[1].Replace("old value", "new value");
' Replace specific values in a column
ws.Columns(1).Replace("old value", "new value")
$vbLabelText   $csharpLabel

Der obige Code ersetzt old value durch new value nur für Spalte 1.

Wie kann ich Werte in einem Spaltenbereich ersetzen?

Verwenden Sie die Funktion range, um innerhalb eines Bereichs einer bestimmten Spalte zu ersetzen:

// Replace specific values in a column range
ws["B5:B10"].Replace("old value", "new value");
// Replace specific values in a column range
ws["B5:B10"].Replace("old value", "new value");
' Replace specific values in a column range
ws("B5:B10").Replace("old value", "new value")
$vbLabelText   $csharpLabel

Der obige Code ersetzt old value durch new value nur innerhalb des Bereichs von B5 bis B10 für Spalte B.


Wie kann ich eine Zeile aus einem Excel-Arbeitsblatt entfernen?

IronXL bietet eine einfache Funktion zum Entfernen einer bestimmten Zeile aus einer Excel-Datei SpreadSheet. Diese Funktionalität hilft beim Bereinigen von Daten oder beim Entfernen veralteter Datensätze aus Tabellenkalkulationen. Siehe das Beispiel:

:path=/static-assets/excel/content-code-examples/how-to/csharp-edit-excel-file-row-value.cs
using IronXL;

WorkBook wb = WorkBook.Load("sample.xlsx");
WorkSheet ws = wb.GetWorkSheet("Sheet1");
// Setting a static value for the entire row
ws.Rows[3].Value = "New Value";
wb.SaveAs("sample.xlsx");
Imports IronXL

Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")
' Setting a static value for the entire row
ws.Rows(3).Value = "New Value"
wb.SaveAs("sample.xlsx")
$vbLabelText   $csharpLabel

Der obige Code entfernt Zeile 3 von SpreadSheet sample.xlsx, wie in der folgenden Tabelle dargestellt:

Vorher Nachher
Excel-Arbeitsblatt mit markierter Zeile 4, die Daten des Regierungssegments für Kanada vor dem Entfernen der Zeile zeigt Excel-Arbeitsblatt mit blau markierter Zeile 4, das das Ergebnis nach dem Entfernen der Zeile zeigt

Wie kann ich ein Arbeitsblatt aus einer Excel-Datei entfernen?

Um einen kompletten WorkSheet aus einer Excel-Datei zu entfernen, verwenden Sie die folgende Methode. Dies hilft bei der Konsolidierung von Daten oder beim Entfernen von temporären Arbeitsblättern, die für Berechnungen verwendet werden. Weitere Informationen zur Verwaltung von Arbeitsblättern finden Sie in unserem Leitfaden zur Verwaltung von Arbeitsblättern.

// Remove a worksheet by its index
wb.RemoveWorkSheet(1); // by sheet indexing
// Remove a worksheet by its index
wb.RemoveWorkSheet(1); // by sheet indexing
' Remove a worksheet by its index
wb.RemoveWorkSheet(1) ' by sheet indexing
$vbLabelText   $csharpLabel

WorkSheet WorkSheet ist das WorkSheet, genau wie in den obigen Beispielen. So entfernen Sie ein Arbeitsblatt nach Namen:

// Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1"); //by sheet name
// Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1"); //by sheet name
' Remove a worksheet by its name
wb.RemoveWorkSheet("Sheet1") 'by sheet name
$vbLabelText   $csharpLabel

IronXL bietet viele weitere Funktionen, mit denen sich jede Art von Bearbeitung und Löschung in Excel mühelos durchführen lässt SpreadSheets. Entdecken Sie zusätzliche Funktionen wie Erstellung von Excel-Diagrammen, Anwendung bedingter Formatierungen oder Arbeiten mit Formeln. Wenden Sie sich an unser Entwicklerteam, wenn Sie Fragen zur Verwendung von IronXL in Ihrem Projekt haben.


Bibliothek Schnellzugriff

IronXL Bibliothek Dokumentation

Entdecken Sie den vollen Funktionsumfang der IronXL C# Library mit verschiedenen Funktionen zum Bearbeiten, Löschen, Gestalten und Perfektionieren Ihrer Excel-Arbeitsmappen.

IronXL Bibliothek Dokumentation
Documentation related to Wie kann ich ein Arbeitsblatt aus einer Excel-Datei entfernen?

Häufig gestellte Fragen

Wie kann ich Excel-Dateien in C# bearbeiten, ohne dass Microsoft Office installiert ist?

IronXL ermöglicht es Ihnen, Excel-Dateien in C# zu bearbeiten, ohne Microsoft Office oder Excel Interop zu benötigen. Es handelt sich um eine eigenständige Bibliothek, mit der Zellen, Zeilen, Spalten und Arbeitsblätter programmatisch geändert werden können, ohne dass Office-Abhängigkeiten bestehen und die plattformübergreifend einschließlich Linux und macOS funktioniert.

Wie lässt sich ein Zellwert in einer Excel-Datei am einfachsten mit C# aktualisieren?

Mit IronXL können Sie einen Zellwert in nur wenigen Zeilen Code aktualisieren: IronXl.WorkBook.Load("file.xlsx").GetWorkSheet("Sheet1")["C3"].Value = "Hello IronXL"; gefolgt vom Speichern der Arbeitsmappe. Dieser Ansatz erfordert kein Excel-Interop und bietet direkten Zellzugriff.

Kann ich ganze Zeilen und Spalten in Excel programmatisch bearbeiten?

Ja, IronXL unterstützt die Bearbeitung ganzer Zeilen und Spalten mit entweder statischen oder dynamischen Werten. Sie können ganze Zeilen mit einem einzigen Wert ändern, Spalten programmatisch auffüllen oder Zeilen mit dynamischen Daten aus verschiedenen Quellen wie Datenbanken oder Berechnungen aktualisieren.

Wie entferne ich Zeilen oder Arbeitsblätter aus einer Excel-Datei in C#?

IronXL bietet einfache Methoden zum Entfernen von Zeilen aus Arbeitsblättern und zum Löschen ganzer Arbeitsblätter aus Excel-Dateien. Diese Vorgänge werden programmatisch ausgeführt, ohne dass Excel installiert sein muss, was es ideal für serverseitige Anwendungen macht.

Ist es möglich, Werte in einer Excel-Tabelle zu suchen und zu ersetzen?

Ja, IronXL enthält Funktionen zum Suchen und Ersetzen von Werten in Tabellenkalkulationen. Sie können bestimmte Werte programmgesteuert suchen und durch neue Daten ersetzen, ähnlich wie bei der nativen Such- und Ersetzungsfunktion von Excel, jedoch automatisiert durch C#-Code.

Welche Plattformen unterstützt die C#-Bibliothek zur Excel-Bearbeitung?

IronXL unterstützt mehrere Plattformen, darunter Windows, Linux und macOS, und ist damit vielseitig für die plattformübergreifende Entwicklung einsetzbar. So können Sie Excel-Dateien in C#-Anwendungen unabhängig von der Einsatzumgebung bearbeiten.

Wie kann ich mit der Bearbeitung von Excel-Dateien in C# beginnen?

Um loszulegen, laden Sie IronXL über den NuGet-Paketmanager herunter und installieren Sie es. Die Bibliothek ist für die Verwendung durch Entwickler kostenlos. Nach der Installation können Sie sofort damit beginnen, Excel-Dateien zu laden, Zellen zu ändern und Änderungen mit einfachem, intuitivem Code zu speichern.

Welche Vorteile hat die programmatische Excel-Bearbeitung gegenüber manuellen Methoden?

IronXL ermöglicht eine programmatische Excel-Bearbeitung, die menschliche Fehler reduziert, sich wiederholende Aufgaben automatisiert und Massenoperationen ermöglicht, die manuell zeitaufwändig wären. Außerdem entfällt die Notwendigkeit von Excel Interop, was die Komplexität reduziert und die Leistung verbessert.

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 2,052,917 | Version: 2026.6 just released
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronXL.Excel
Führen Sie ein Beispiel aus und sehen Sie zu, wie Ihre Daten zu einer Tabellenkalkulation werden.