In diesem Artikel erfahren Sie, wie Sie Excel-Zellen in einem Arbeitsblatt zusammenführen oder die Zusammenführung aufheben. Im Allgemeinen bezieht sich das Zusammenführen von Zellen auf eine oder mehrere Zellen, die zusammengefügt werden, um eine große Zelle zu bilden. Die angrenzenden Zellen können jedoch vertikal oder horizontal zusammengeführt werden. Das Konvertieren einer großen Zelle in mehrere Zellen wird in Excel Arbeitsblättern als Trennen oder Teilen von Zellen bezeichnet. Lassen Sie uns die folgenden Anwendungsfälle untersuchen:

Excel-Zellen im Arbeitsblatt mit C# zusammenführen

Mit der Aspose.Cells for .NET-API mit C# können Sie ganz einfach Zellen in einem Excel-Arbeitsblatt zusammenführen. In diesem Beispiel erstellen wir ein neues Excel-Arbeitsblatt von Grund auf neu und führen dann einige Zellen zusammen, indem wir die folgenden Schritte ausführen:

  1. Erstellen Sie ein Workbook objekt
  2. Holen Sie sich die erste Worskeet
  3. Bestimmte Zellen zusammenführen.
  4. Geben Sie den Wert in die verbundene Zelle ein
  5. Wenden Sie Stile auf die Zelle an
  6. Speichern Sie das ausgegebene Excel-Arbeitsblatt

Das folgende code snippet zeigt, wie Sie Zellen in einem Excel-Arbeitsblatt mit C# zusammenführen:

// Erstellen Sie eine Arbeitsmappe.
Workbook wbk = new Workbook();

// Erstellen Sie ein Arbeitsblatt und erhalten Sie das erste Blatt.
Worksheet worksheet = wbk.Worksheets[0];

// Erstellen Sie ein Cells objekt, um alle Zellen abzurufen.
Cells cells = worksheet.Cells;

// Einige Zellen (C6:E7) zu einer einzigen C6-Zelle zusammenführen.
cells.Merge(5, 2, 2, 3);

// Geben Sie Daten in C6 Cell ein.
worksheet.Cells[5, 2].PutValue("This is my value");

// Erstellen Sie ein Style objekt, um den Style der C6-Zelle abzurufen.
Style style = worksheet.Cells[5, 2].GetStyle();

// Erstellen Sie ein Font objekt
Font font = style.Font;

// Legen Sie den Namen fest.
font.Name = "Times New Roman";

// Legen Sie die Schriftgröße fest.
font.Size = 18;

// Legen Sie die Schriftfarbe fest
font.Color = System.Drawing.Color.Blue;

// Fetten Sie den Text
font.IsBold = true;

// Machen Sie es kursiv
font.IsItalic = true;

// Stellen Sie die Hintergrundfarbe von C6 Cell auf Rot ein
style.ForegroundColor = System.Drawing.Color.Red;
style.Pattern = BackgroundType.Solid;

// Wenden Sie den Stil auf die C6-Zelle an.
cells[5, 2].SetStyle(style);

// Speichern Sie die Arbeitsmappe.
wbk.Save(dataDir + "MergeCells.xlsx");

Die aus diesem Codeausschnitt generierte Ausgabedatei enthält verbundene Zellen wie im folgenden Screenshot:

Zellen verbinden

Trennen Sie Excel-Zellen im Arbeitsblatt mit C#

Wir haben gelernt, wie man Zellen in einer Excel Datei zusammenführt. Lassen Sie uns diesen Prozess noch einen Schritt weiterführen. Hier werden wir erwägen, Zellen im Excel-Arbeitsblatt zu trennen, indem wir die folgenden Schritte ausführen:

  1. Excel quelldatei laden
  2. Erstellen Sie das Objekt Worksheet und greifen Sie auf das erste Blatt zu
  3. Verschmelzen Sie die Zellen
  4. Ausgabedatei speichern

Das folgende code snippet basiert auf diesen Schritten und zeigt, wie Sie Zellen in einer Excel Datei mit C# trennen:

// Öffnen Sie die Excel Datei.
Workbook wbk = new Workbook(dataDir + "MergeCells.xlsx");

// Erstellen Sie ein Arbeitsblatt und erhalten Sie das erste Blatt.
Worksheet worksheet = wbk.Worksheets[0];

// Erstellen Sie ein Cells objekt, um alle Zellen abzurufen.
Cells cells = worksheet.Cells;

// Trennen Sie die Zellen.
cells.UnMerge(5, 2, 2, 3);

// Speicher die Datei.
wbk.Save(dataDir + "UnmergeCells.xlsx");

Das folgende Bild zeigt, wie die nicht zusammengeführten Zellen aussehen, wenn Sie den obigen Code in Ihrer Umgebung ausführen:

Zellen trennen

Führen Sie eine Reihe von Excel-Zellen in einem Arbeitsblatt mit C# zusammen

Manchmal sind mehrere Zellen unter verschiedenen Zellbereichen angegeben. Möglicherweise möchten Sie einen bestimmten Zellbereich in einer Excel-Tabelle zusammenführen. In solchen Szenarien befolgen Sie bitte die unten aufgeführten Schritte:

  1. Erstellen Sie ein Workbook objekt
  2. Greifen Sie auf das erste Worksheet zu
  3. Geben Sie Daten in eine Zelle ein
  4. Erstelle und verbinde den Bereich
  5. Speichern Sie die ausgegebene Excel Datei

Das folgende code snippet zeigt, wie Sie einen Zellbereich in einer Excel Datei mit C# zu einer größeren Zelle zusammenführen:

// Erstellen Sie eine Arbeitsmappe
Workbook workbook = new Workbook();

// Greifen Sie auf das erste Arbeitsblatt zu
Worksheet worksheet = workbook.Worksheets[0];

// Geben Sie Daten in C6 Cell ein.
worksheet.Cells[0, 0].PutValue("Merge Range");

// Erstellen Sie einen Bereich
Range range = worksheet.Cells.CreateRange("A1:D4");

// Bereich in einer einzigen Zelle zusammenführen
range.Merge();

// Speichern Sie die Arbeitsmappe
workbook.Save(dataDir + "Merge_Range.xlsx");

Trennen Sie eine Reihe von Excel-Zellen in einem Arbeitsblatt mit C#

Wir haben im vorherigen Beispiel das Zusammenführen einer Reihe von Zellen in Excel untersucht. Lassen Sie uns mit den folgenden Schritten fortfahren, um die verbundenen Zellen zu trennen:

  1. Quelle laden Workbook
  2. Zugriff auf spezifisches Worksheet
  3. Erstellen Sie ein Range objekt
  4. Rufen Sie die Methode UnMerge auf
  5. Speichern Sie die ausgegebene Excel Datei

Das folgende code snippet folgt diesen Schritten und zeigt, wie Sie die Zusammenführung eines Zellbereichs in einem Excel-Arbeitsblatt mit C# aufheben:

// Erstellen Sie eine Arbeitsmappe
Workbook workbook = new Workbook(dataDir + "Merge_Range.xlsx");

// Greifen Sie auf das erste Arbeitsblatt zu
Worksheet worksheet = workbook.Worksheets[0];

// Erstellen Sie einen Bereich
Range range = worksheet.Cells.CreateRange("A1:D4");

// Bereich zusammenführen
range.UnMerge();

// Speichern Sie die Arbeitsmappe
workbook.Save(dataDir + "UnmergeRange.xlsx");

Excel-Zellen des benannten Bereichs im Arbeitsblatt mit C# zusammenführen

Manchmal enthalten die Excel Dateien mehrere benannte Bereiche, da diese leicht zu identifizieren und entsprechend zu bearbeiten sind. Daher können Sie auch jeden benannten Bereich zusammenführen, indem Sie seinen Namen angeben. Als Ergebnis werden alle Zellen in diesem benannten Bereich zu einer größeren Zelle zusammengeführt. Sie müssen diese Schritte befolgen:

  1. Excel-Quelle laden Workbook
  2. Greifen Sie auf das Worksheet zu, das den benannten Bereich enthält
  3. Stil definieren und anwenden
  4. Zusammenführen Benannter Bereich
  5. Ausgabedatei speichern

Das folgende code snippet erklärt, wie Zellen in einem benannten Bereich in C# zusammengeführt werden:

// Laden Sie eine Arbeitsmappe
Workbook workbook = new Workbook(dataDir + "Merge_Range.xlsx");

// Greifen Sie auf das erste Arbeitsblatt zu
Worksheet worksheet = workbook.Worksheets[0];

// Geben Sie einen Bereich an
Range range = worksheet.Cells.CreateRange("A1:D4");


range.Name = "Named_Range";

// Holen Sie sich die Reichweite.
Range range1 = workbook.Worksheets.GetRangeByName("Named_Range");

// Definieren Sie ein Stilobjekt.
Style style = workbook.CreateStyle();

// Legen Sie die Ausrichtung fest.
style.HorizontalAlignment = TextAlignmentType.Center;

// Erstellen Sie ein StyleFlag objekt.
StyleFlag flag = new StyleFlag();
// Setzen Sie das relative Stilattribut auf ON.
flag.HorizontalAlignment = true;

// Wenden Sie den Stil auf den Bereich an.
range1.ApplyStyle(style, flag);

// Geben Sie Daten in den Bereich ein.
range1[0, 0].PutValue("Aspose");

// Bereich zusammenführen
range.Merge();

// Speichern Sie die Arbeitsmappe
workbook.Save(dataDir + "Merge_NamedRange.xlsx");

Die Ausgabe des obigen code snippets entspricht dem folgenden Bild:

Benannten Bereich zusammenführen

Fazit

Das Zusammenführen oder Trennen von Zellen in Excel Arbeitsmappen und arbeitsblättern ist eine wichtige und nützliche Funktion. Wir haben in diesem Artikel verschiedene mögliche Anwendungsfälle mit allen Schritten und Bildern zusammengestellt. Jetzt können Sie diesen Schritten ganz einfach folgen und Zellen, Bereiche oder benannte Bereiche in Excel Dateien zusammenführen oder die Zusammenführung aufheben. Bei Fragen oder Bedenken können Sie uns über das kostenlose Support-Forum kontaktieren.

Siehe auch