翻譯|使用教程|編輯:吉煒煒|2025-06-05 09:48:47.123|閱讀 117 次
概述:郵件合并功能讓您能夠輕松批量創建個性化文檔,例如信函、電子郵件、發票或證書。在本文中,我們將向您展示如何使用 C# 從 Excel 執行郵件合并。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
郵件合并功能讓您能夠輕松批量創建個性化文檔,例如信函、電子郵件、發票或證書。您可以從模板入手,并使用電子表格中的數據進行填充。Excel 文件中的每一行都會生成一個新文檔,并在正確的位置包含正確的詳細信息。這是一種自動化重復性任務(例如發送發票或生成報告)的智能方法。在本文中,我們將向您展示如何使用 C# 從 Excel 執行郵件合并。
我們將使用Aspose.Cells for .NET API 在 C# 中從 Excel 執行郵件合并。它提供了強大的工具,可直接在代碼中處理 Excel 文件。它使開發人員能夠輕松創建、讀取和更新電子表格。您還可以輕松處理郵件合并等高級任務。該庫使 Excel 自動化快速、靈活且可靠。
要開始使用 Aspose.Cells for .NET,請遵循以下簡單的安裝說明:
PM> Install-Package Aspose.Cells
Aspose.Cells 不支持與 Word 相同的“郵件合并”功能。它使用智能標記將郵件合并添加到 Excel 。這些標記在電子表格中充當占位符,該庫會在運行時將其替換為真實數據。在處理數據源中的每一行時,它會自動填充模板并擴展內容,讓您只需幾行 C# 代碼即可生成完全個性化的文檔。
&=DataSource.ColumnName
在處理過程中,Aspose.Cells 會用來自 、 或任何 的實際數據替換這些數據DataTable。List<T>例如IEnumerable,庫會&=Data.Name用數據表中“名稱”列的值替換這些數據。
創建一個包含智能標記的 Excel 文件(例如 Template.xlsx)。以下是示例布局:
姓名 | 電子郵件 | 數量 |
---|---|---|
&=數據.名稱 | &=數據.電子郵件 | &=數據.金額 |
要使用 Aspose.Cells for .NET 從 Excel 執行郵件合并,只需按照以下步驟操作:
使用該類加載包含智能標記的 Excel 模板文件Workbook。該類Workbook代表整個 Excel 文件(工作簿)。加載的模板文件將用作合并輸出的布局。
Workbook workbook = new Workbook("Template.xlsx");
這里,我們創建一個 DataTable 來模擬您的 Excel 數據源。每一列對應一個智能標記,每一行代表一組要插入的值。DataTable類名System.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", 1500);
我們使用該類WorkbookDesigner將模板與數據連接起來。這WorkbookDesigner是 Aspose.Cells 中一個特殊的類,用于處理智能標記和數據綁定。它將數據源(例如 DataTable)與 Excel 模板鏈接起來。該SetDataSource()方法將 DataTable(數據)綁定到工作簿中的智能標記。
WorkbookDesigner designer = new WorkbookDesigner(workbook); designer.SetDataSource(dt);
設置數據源后,調用Process()會用 DataTable 中的實際值填充所有智能標記。此命令執行郵件合并。它會遍歷智能標記,并將其替換為數據源中的實際值。
designer.Process();
最后,我們保存合并了所有數據的完整文件。
workbook.Save("MergedOutput.xlsx");
您可以使用一行代碼輕松地將合并的 Excel 文檔保存為 PDF。
// Set PDF options
PdfSaveOptions options = new PdfSaveOptions();
// Save as PDF
workbook.Save("MergedDocument.pdf", SaveFormat.Pdf);
// Load the Excel template 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); // Set the data source WorkbookDesigner designer = new WorkbookDesigner(workbook); designer.SetDataSource(dt); // Process smart markers (mail merge) designer.Process(); // Save the output workbook.Save("MergedOutput.xlsx");
輸出 Excel 文件包含每個條目的一行,其中填充了個性化數據來代替智能標記。
使用 C# 從 Excel 進行郵件合并 - 輸出
問題 1:沒有安裝 Microsoft Office 可以使用 Excel 郵件合并嗎?
是的,郵件合并不需要Microsoft Office。Aspose.Cells獨立運行,并通過其自帶的API處理所有事務。
Q2:智能標記和 Word 合并字段有什么區別?
智能標記可在 Excel 中使用,并且更易于自定義,可按行擴展數據。合并字段功能則特定于 Word。
問題 3:我可以使用 Aspose 將 Excel 合并到 Word 嗎?
是的,但是對于這種情況你需要 Aspose.Words。
問題 4:是否可以從 Excel 合并自動生成 PDF?
當然可以。只需使用 Aspose.Cells 將最終工作簿保存為 PDF 格式即可。
Excel 郵件合并功能提供了一種強大的方法,可以使用熟悉的電子表格界面生成動態、個性化的文檔。在這篇博文中,我們演示了如何使用 C# 從 Excel 進行郵件合并。通過使用 Aspose.Cells ,您可以靈活地完全自動化此過程,并生成數千份發票、證書或任何結構化報告。
————————————————————————————————————————
關于慧都科技:
慧都科技是一家行業數字化解決方案公司,長期專注于軟件、油氣與制造行業。公司基于深入的業務理解與管理洞察,以系統化的業務建模驅動技術落地,幫助企業實現智能化運營與長期競爭優勢。在軟件工程領域,我們提供開發控件、研發管理、代碼開發、部署運維等軟件開發全鏈路所需的產品,提供正版授權采購、技術選型、個性化維保等服務,幫助客戶實現技術合規、降本增效與風險可控。慧都科技Aspose在中國的官方授權代理商,提供Aspose系列產品免費試用,咨詢,正版銷售等于一體的專業化服務。Aspose是文檔處理領域的優秀產品,幫助企業高效構建文檔處理的應用程序。
下載|體驗更多Aspose產品,請咨詢,或撥打產品熱線:023-68661681
加入Aspose技術交流QQ群(1041253375),與更多小伙伴一起探討提升開發技能。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網