2种方法邮件合并,用Excel和C#代码谁更方便?

有些通知书、通用信函、座位表、准考证之类的,一次性要做很多份,使用word中的邮件合并功能几分钟就可以制作成百上千份,用C#代码更是一键完工,那么哪一个才最省事儿呢?

Excel+word邮件合并的步骤

需要一份excel文件,文件中存放了每个人的信息。

2种方法邮件合并,用Excel和C#代码谁更方便?

需要一份word的模板。以录取通知书为例,首先在word中插入背景图片,接着在图片上插入文本框,并输入必要的文字,除了个人信息之外的,其他的内容都填写完整,并排版好。

2种方法邮件合并,用Excel和C#代码谁更方便?

切换到“邮件”菜单下,点击“选择收件人”,接着点击“使用现有列表”,然后打开excel信息表。

2种方法邮件合并,用Excel和C#代码谁更方便?

切换到“邮件”菜单下,点击“选择收件人”,接着点击“使用现有列表”,然后打开excel信息表。

2种方法邮件合并,用Excel和C#代码谁更方便?

点击姓名所在的位置,接着点击“插入合并域”,选择“姓名”,然后点击“插入”。

2种方法邮件合并,用Excel和C#代码谁更方便?

2种方法邮件合并,用Excel和C#代码谁更方便?

这种方式适用于小数量单批次使用,比如座次表、通知信件什么的,如果是反复使用、大量数据的邮件,请看下方用代码实现的邮件合并方式。

C#实现邮件合并

  • 先下载Spire.Doc for .NET功能类库,并引用到软件的程序集;
  • 再制作一个word的模板;
  • 代码实现,引入来自数据源的字段,并在代码中绑定word模板中的字段,当即完工!

来看看我们的实现代码:

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);//保存        }    }}

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月15日
下一篇 2022年1月15日

相关推荐

发表回复

登录后才能评论