原創|使用教程|編輯:何躍|2022-01-18 11:22:27.360|閱讀 340 次
概述:有些通知書、通用信函、座位表、準考證之類的,一次性要做很多份,使用word中的郵件合并功能幾分鐘就可以制作成百上千份,用C#代碼更是一鍵完工,那么哪一個才最省事兒呢?
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
需要一份excel文件,文件中存放了每個人的信息。
需要一份word的模板。以錄取通知書為例,首先在word中插入背景圖片,接著在圖片上插入文本框,并輸入必要的文字,除了個人信息之外的,其他的內容都填寫完整,并排版好。
切換到“郵件”菜單下,點擊“選擇收件人”,接著點擊“使用現有列表”,然后打開excel信息表。
切換到“郵件”菜單下,點擊“選擇收件人”,接著點擊“使用現有列表”,然后打開excel信息表。
點擊姓名所在的位置,接著點擊“插入合并域”,選擇“姓名”,然后點擊“插入”。
重復步驟3,直到把所有的個人信息域都添加斤模板為止。最后點擊“完成并合并”下的“編輯單個文檔”,并點擊“全部”,點擊“確定”。
這種方式適用于小數量單批次使用,比如座次表、通知信件什么的,如果是反復使用、大量數據的郵件,請看下方用代碼實現的郵件合并方式。
來看看我們的實現代碼:
using System; using System.Windows.Forms; using Spire.Doc; namespace MailMerage { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Document document = new Document(); document.LoadFromFile(@"..\..\..\..\..\..\Data\郵件合并模板.doc"); // 如果是多個數據源,用foreach、for等循環賦值、保存 string[] filedNames = new string[]{"Contact Name","Fax","Date"};//字段 string[] filedValues = new string[]{"John Smith","+1 (69) 123456",System.DateTime.Now.Date.ToString()};//給字段復制 document.MailMerge.Execute(filedNames, filedValues); //執行賦值 document.SaveToFile("郵件合并.doc", FileFormat.Doc);//保存 } } }
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn