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