Mail Merge from Excel in C# | Excel Mail Merge to Excel

Fúze pošty usnadňuje hromadné vytváření personalizovaných dokumentů, jako jsou dopisy, e-maily, faktury nebo osvědčení. Začnete šablonou a naplníte ji pomocí dat z tabulky. Každý řádek v souboru Excel generuje nový dokument se správnými detaily na správných místech. Je to chytrý způsob, jak automatizovat opakující se úkoly, jako je zasílání faktur nebo generování zpráv. V tomto příspěvku vám ukážeme, jak provést fúzi pošty z Excelu pomocí C#. Pojďme začít.

Tento článek se zabývá následujícími tématy:

C# Mail Merge Excel knihovna

Budeme používat Aspose.Cells for .NET API pro provádění hromadné korespondence z Excelu v C#. Nabízí silné nástroje pro práci s Excel soubory přímo ve vašem kódu. Umožňuje vývojářům snadno vytvářet, číst a aktualizovat tabulky. Můžete také snadno řešit pokročilé úkoly, jako je hromadná korespondence. Knihovna činí automatizaci Excelu rychlou, flexibilní a spolehlivou.

Abychom začali s Aspose.Cells for .NET, dodržujte tyto jednoduché pokyny k instalaci:

  1. Prosím, stáhněte si to z releases.
  2. Nainstalujte knihovnu pomocí NuGet Package Manager s následujícím příkazem:
PM> Install-Package Aspose.Cells

Jak funguje sloučení pošty s Aspose.Cells?

Aspose.Cells nepodporuje “sloučení pošty” v stejném stylu jako Word.Přidává sloučení pošty do Excelu pomocí inteligentních značek.Tyto značky fungují jako zástupné symboly ve vašem tabulkovém procesoru a knihovna je automaticky nahrazuje skutečnými daty v běhu. Když zpracovává každý řádek z vašeho datového zdroje, vyplňuje šablonu a automaticky rozšiřuje obsah, což vám umožňuje generovat plně personalizované dokumenty s pouhými několika řádky kódu C#.

&=DataSource.ColumnName

Během zpracování Aspose.Cells nahrazuje tyto položky skutečnými daty z DataTable, List<T> nebo jakéhokoliv IEnumerable. Například knihovna nahradí &=Data.Name hodnotami z sloupce Name v tabulce Data.

Připravte šablonu Excelu

Vytvořte soubor Excel (např. Template.xlsx) se smart markery. Zde je ukázkový layout:

NameEmailAmount
&=Data.Name&=Data.Email&=Data.Amount

Krok za krokem návod na provádění sloučení pošty z Excelu v C#

Pro provedení hromadné korespondence z Excelu pomocí Aspose.Cells for .NET jednoduše dodržujte tyto kroky:

Krok 1: Načtěte šablonu Excelu

Načtěte soubor s šablonou Excel, který obsahuje Smart Markers, pomocí třídy Workbook. Třída Workbook představuje celý soubor Excel (pracovní kniha).Načtený soubor šablony slouží jako rozložení pro váš sloučený výstup.

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

Krok 2: Vytvořte DataTable

Zde vytváříme DataTable, který simuluje váš zdroj dat Excel. Každý sloupec odpovídá chytrému markeru a každý řádek představuje jednu sadu hodnot k vložení. Třída DataTable z System.Data obsahuje data, která chcete sloučit. Každý sloupec odpovídá chytrému markeru a každý řádek poskytuje jedinečnou sadu hodnot.

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);

Krok 3: Propojte svou šablonu Excel s datovým zdrojem

Používáme třídu WorkbookDesigner pro propojení šablony s daty. Třída WorkbookDesigner je speciální třída v Aspose.Cells navržená pro práci se smart markery a datovým vazbami. Propojuje váš datový zdroj (například DataTable) se šablonou Excel. Metoda SetDataSource() propojuje DataTable (Data) se smart markery v sešitu.

WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);
  • SetDataSource() připojí DataTable k chytrým značkám v sešitu.
  • "Data" je název používaný v markerech jako &=Data.Name.

Krok 4: Proveďte sloučení pošty

Jakmile jste nastavili zdroj dat, volání Process() vyplní všechny chytré značky skutečnými hodnotami z datové tabulky. Tento příkaz provádí hromadnou korespondenci. Prochází chytrými značkami a nahrazuje je skutečnými hodnotami ze zdroje dat.

designer.Process();

Krok 5: Uložte soubor

Nakonec uložíme dokončený soubor se všemi sloučenými daty.

workbook.Save("MergedOutput.xlsx");

Uložte sloučený výstup jako PDF

Můžete snadno uložit sloučený dokument Excel jako PDF pomocí jediného řádku kódu.

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

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

Complete C# Code to Mail Merge Data

// Načtěte šablonu Excelu
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);

// Nastavte zdroj dat
WorkbookDesigner designer = new WorkbookDesigner(workbook);
designer.SetDataSource(dt);

// Zpracovat chytré značky (sloučení pošty)
designer.Process();

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

Output

Výstupní soubor Excel obsahuje řádek pro každý záznam s personalizovanými daty vyplněnými na místě chytrých značek.

Mail Merge z Excelu v C# - Výstup

Mail Merge z Excelu v C# - Výstup

Získejte zdarma licenci

Získejte bezplatnou dočasnou licenci, která vám umožní otestovat plné funkce Aspose.Cells for .NET bez omezení. Je ideální, pokud hodnotíte API pro automatizační úkoly, jako je sloučení pošty, vykazování v Excelu nebo export do PDF.

Excel to Excel Mail Merge: Bezplatné zdroje

Kromě sloučení pošty v Excelu poskytujeme různé zdroje, které vám pomohou prohloubit vaše znalosti o Aspose.Cells for .NET. Podívejte se na naši dokumentaci, tutoriály a komunitní fóra pro více informací.

Často kladené otázky (FAQ)

Q1: Mohu používat hromadnou korespondenci v Excelu bez nainstalovaného Microsoft Office?

Ano, sloučení pošty nevyžaduje Microsoft Office. Aspose.Cells funguje nezávisle a vše řídí prostřednictvím svých vlastních rozhraní API.

Q2: Jaký je rozdíl mezi chytrými značkami a sloučením polí Word?

Smart Markers fungují v Excelu a jsou více přizpůsobitelné pro rozšiřování dat po řádcích. Sloučená pole jsou specifická pro Word.

Q3: Can I merge from Excel to Word using Aspose?

Ano, ale budete potřebovat Aspose.Words pro tento scénář.

Q4: Je možné automatizovat generování PDF z fúzí Excelu?

Absolutně. Stačí uložit konečnou pracovní knihu ve formátu PDF pomocí Aspose.Cells.

Závěr

Slučování pošty z Excelu nabízí silný způsob, jak generovat dynamické, personalizované dokumenty pomocí známého rozhraní tabulkového procesoru. V tomto blogovém příspěvku jsme prošli slučováním pošty z Excelu pomocí C#. Použitím chytrých značek Aspose.Cells získáte flexibilitu k plné automatizaci tohoto procesu a generování tisíců faktur, certifikátů nebo jakýchkoli strukturovaných zpráv.

Pokud máte jakékoli dotazy nebo potřebujete další pomoc, neváhejte nás kontaktovat na našem free support forum.

Viz také