Mail Merge aus Excel in C# | Excel Mail Merge zu Excel

Mail-Merge macht es einfach, personalisierte Dokumente in großen Mengen zu erstellen, wie Briefe, E-Mails, Rechnungen oder Zertifikate. Sie beginnen mit einer Vorlage und füllen diese mit Daten aus einer Tabelle. Jede Zeile in der Excel-Datei generiert ein neues Dokument mit den richtigen Details an den richtigen Stellen. Es ist eine clevere Möglichkeit, sich wiederholende Aufgaben wie das Versenden von Rechnungen oder das Erstellen von Berichten zu automatisieren. In diesem Beitrag werden wir Ihnen zeigen, wie Sie eine Mail-Merge aus Excel mit C# durchführen können. Lassen Sie uns anfangen.

Dieser Artikel behandelt die folgenden Themen:

C# Mail Merge Excel Bibliothek

Wir werden die Aspose.Cells for .NET API verwenden, um einen Serienbrief aus Excel in C# durchzuführen. Sie bietet leistungsstarke Werkzeuge, um direkt in Ihrem Code mit Excel Dateien zu arbeiten. Sie ermöglicht Entwicklern das Erstellen, Lesen und Aktualisieren von Tabellenkalkulationen mit Leichtigkeit. Sie können auch komplexe Aufgaben wie das Mergen von Briefen problemlos durchführen. Die Bibliothek macht die Excel-Automatisierung schnell, flexibel und zuverlässig.

Um mit Aspose.Cells for .NET zu beginnen, befolgen Sie diese einfachen Installationsanweisungen:

  1. Bitte lade es von den releases herunter.
  2. Installieren Sie die Bibliothek mit NuGet Package Manager mit folgendem Befehl:
PM> Install-Package Aspose.Cells

Wie funktioniert der Serienbrief mit Aspose.Cells?

Aspose.Cells unterstützt `Mail Merge” nicht in der gleichen Weise wie Word.Es fügt Mail Merge zu Excel mit Smart Markers hinzu. Diese Marker fungieren als Platzhalter in Ihrem Spreadsheet, und die Bibliothek ersetzt sie während der Laufzeit durch echte Daten. Während es jede Zeile aus Ihrer Datenquelle verarbeitet, füllt es die Vorlage aus und erweitert den Inhalt automatisch, sodass Sie vollständig personalisierte Dokumente mit nur wenigen Zeilen C#-Code generieren können.

&=DataSource.ColumnName

Während der Verarbeitung ersetzt Aspose.Cells diese durch tatsächliche Daten aus einer DataTable, List<T> oder einem beliebigen IEnumerable. Zum Beispiel ersetzt die Bibliothek &=Data.Name durch Werte aus der Namensspalte in der Datentabelle.

Bereiten Sie die Excel-Vorlage vor.

Erstellen Sie eine Excel-Datei (z.B. Template.xlsx) mit smarten Markierungen. Hier ist ein Beispiellayout:

NameEmailBetrag
&=Data.Name&=Data.Email&=Data.Amount

Schritt-für-Schritt-Anleitung zum Durchführen eines Serienbriefs aus Excel in C#

Um einen Serienbrief aus Excel mit Aspose.Cells for .NET durchzuführen, folgen Sie einfach diesen Schritten:

Schritt 1: Laden Sie die Excel-Vorlage

Laden Sie die Excel-Vorlagendatei, die Smart Marker enthält, mit der Workbook Klasse. Die Workbook Klasse repräsentiert die gesamte Excel-Datei (Arbeitsmappe).Die geladene Vorlagendatei dient als Layout für Ihre zusammengeführte Ausgabe.

Workbook workbook = new Workbook("Template.xlsx");

Schritt 2: Erstellen einer DataTable

Hier erstellen wir eine DataTable, die Ihre Excel-Datenquelle simuliert. Jede Spalte entspricht einem intelligenten Marker, und jede Zeile stellt einen Satz von Werten dar, die eingefügt werden sollen. Die DataTable Klasse aus System.Data enthält die Daten, die Sie zusammenführen möchten. Jede Spalte entspricht einem intelligenten Marker, und jede Zeile bietet einen einzigartigen Satz von Werten.

DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");

dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1500);

Schritt 3: Verknüpfen Sie Ihre Excel-Vorlage mit der Datenquelle

Wir verwenden die WorkbookDesigner Klasse, um die Vorlage mit den Daten zu verbinden. Die WorkbookDesigner ist eine spezielle Klasse in Aspose.Cells, die dazu entwickelt wurde, intelligente Marker und Datenbindung zu verarbeiten. Sie verknüpft Ihre Datenquelle (wie eine DataTable) mit der Excel-Vorlage. Die Methode SetDataSource() bindet die DataTable (Data) an die intelligenten Marker in der Arbeitsmappe.

WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
  • SetDataSource() bindet die DataTable an die Smart Markers im Workbook.
  • "Data" ist der Name, der in den Markierungen wie &=Data.Name verwendet wird.

Schritt 4: Führen Sie den Serienbrief aus

Sobald Sie die Datenquelle festgelegt haben, füllt der Befehl Process() alle Smart Markers mit echten Werten aus der DataTable aus. Dieser Befehl führt den Serienbriefdurchlauf aus. Er geht die Smart Markers durch und ersetzt sie durch tatsächliche Werte aus der Datenquelle.

designer.Process();

Schritt 5: Datei speichern

Schließlich speichern wir die ausgefüllte Datei mit allen zusammengeführten Daten.

workbook.Save("MergedOutput.xlsx");

Save the Merged Output as a PDF

Sie können das zusammengeführte Excel Dokument ganz einfach mit einer einzigen Codezeile als PDF speichern.

// Set PDF options
PdfSaveOptions options = new PdfSaveOptions();

// Save as PDF
workbook.Save("MergedDocument.pdf", SaveFormat.Pdf);

Complete C# Code to Mail Merge Data

// Laden Sie die Excel-Vorlage
Workbook workbook = new Workbook("Template.xlsx");

// Create dummy data
DataTable dt = new DataTable("Data");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("Amount");

dt.Rows.Add("Alice", "alice@example.com", 1000);
dt.Rows.Add("Bob", "bob@example.com", 1200);

// Setze die Datenquelle
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);

// Prozess intelligente Marker (Serienbrief)
designer.Process();

// Save the output
workbook.Save("MergedOutput.xlsx");

Output

Die Ausgabedatei im Excel-Format enthält eine Zeile für jeden Eintrag mit personalisierten Daten, die anstelle der intelligenten Marker eingefügt werden.

Mail Merge aus Excel in C# - Ausgabe

Mail Merge aus Excel in C# - Ausgabe

Holen Sie sich eine kostenlose Lizenz

Erhalten Sie eine kostenlose temporäre Lizenz, die es Ihnen ermöglicht, die vollständigen Funktionen von Aspose.Cells for .NET ohne Einschränkungen zu testen. Es ist ideal, wenn Sie die API für Automatisierungsaufgaben wie den Serienbrief, Excel-Berichterstattung oder PDF-Export bewerten.

Excel to Excel Mail Merge: Kostenlose Ressourcen

Neben dem Excel-Massenversand bieten wir verschiedene Ressourcen an, um Ihnen zu helfen, Ihr Verständnis von Aspose.Cells for .NET zu vertiefen. Schauen Sie sich unsere Dokumentation, Tutorials und Community-Foren für weitere Einblicke an.

Häufig gestellte Fragen (FAQs)

Q1: Kann ich Excel-Serienbriefe verwenden, ohne dass Microsoft Office installiert ist?

Ja, die Serienbrief funktion erfordert kein Microsoft Office. Aspose.Cells läuft unabhängig und verarbeitet alles über seine eigenen APIs.

Q2: Was ist der Unterschied zwischen Smart Markers und Word Merge Fields?

Smart Markers funktionieren in Excel und sind anpassbarer für die zeilenweise Datenexpansion. Zusammengeführte Felder sind Word-spezifisch.

Q3: Kann ich mit Aspose von Excel nach Word fusionieren?

Ja, aber Sie werden Aspose.Words für dieses Szenario benötigen.

Q4: Ist es möglich, die PDF-Erstellung aus Excel-Merges zu automatisieren?

Absolut. Speichern Sie einfach die endgültige Arbeitsmappe im PDF-Format mit Aspose.Cells.

Schlussfolgerung

Der Serienbrief aus Excel bietet eine leistungsstarke Möglichkeit, dynamische, personalisierte Dokumente mit der vertrauten Tabellenblatt-Oberfläche zu erstellen. In diesem Blogbeitrag haben wir den Serienbrief aus Excel mit C# behandelt. Durch die Verwendung von Aspose.Cells Smart Markern erhalten Sie die Flexibilität, diesen Prozess vollständig zu automatisieren und Tausende von Rechnungen, Zertifikaten oder beliebigen strukturierten Berichten zu erstellen.

Wenn Sie Fragen haben oder weitere Unterstützung benötigen, können Sie uns gerne in unserem free support forum kontaktieren.

Siehe auch