ARTICLE · 1160711
批量出文档你还在手工复制粘贴?
批量出文档只能手工复制粘贴?
一份名单加一个模板,
批量出上百份文档
数据源 · 域与规则 · 一页多份 · 批量发邮件
MAIL MERGE
📦 6 Parts + Conclusion
👉 滑动
PART 01
三个前提
模型与铁律
PART 02
场景一 最小闭环
批量生成邀请函
PART 03
场景二 条件内容
按等级换措辞
PART 04
场景三 一页多份
标签·工资条
PART 05
场景四 批量交付
发邮件与 PDF
PART 06
六个坑
避坑清单
PART ///
写在最后
收尾
邮件合并不是什么高级技巧,它是一个被严重低估的省时功能
配置一次,之后换名单就能复用
01
PART
三个前提
BASICS · 模型与三条铁律
第一个前提:它解决的是「一份模板 × N 条数据」。主文档是 Word 里的模板,数据源是 Excel 里的名单,合并后得到 N 份成品。邀请函、合同、证书、工资条、快递面单、标签,全是同一个模型。
第二个前提:三件事不能错。数据源首行必须是字段名,且不能有合并单元格、不能有空行;文档里插入的必须是域而不是普通文字;每条记录之间要用「下一记录」分隔。这三条任意一条错,结果就是所有文档长得一模一样,或者只能生成一条。
第三个前提:入口就在「邮件」选项卡里,不需要插件,也不需要写 VBA。整个流程只有三步:选择收件人、插入合并域、完成并合并。
02
PART
场景一:最小闭环,批量生成邀请函
SCENARIO 01 · 最小闭环
准备数据源
Excel 第一行写字段名(姓名、公司、称谓、金额),第二行开始写数据。不要有合并单元格、不要留空行——空行会被当成一条空记录,后面所有条件判断都会跟着错位。
姓名 公司 称谓 金额
张三 甲科技有限公司 先生 9800
李四 乙设计事务所 女士 15600
写模板并插入域
在 Word 里把固定内容写完,把需要变的地方空出来,然后依次点:邮件 → 开始邮件合并 → 选择收件人 → 使用现有列表,指向刚才那份 Excel。接着把光标放进空位,点「插入合并域」。
插入成功后,屏幕上显示的是域,长这样:
{ MERGE 姓名 }
按 Alt+F9 可以在「域代码」和「域结果」两种显示之间切换。这一步最容易卡住:域必须通过「插入合并域」按钮插进来,手动敲一对大括号再写 MERGE 姓名 只是普通文字,合并时不会被替换。
预览与生成
邮件 → 预览结果,用左右箭头逐条检查。确认无误后,完成并合并 → 编辑单个文档 → 全部,Word 会生成一份新文档,每条记录一页。
03
PART
场景二:按条件出不同内容
SCENARIO 02 · 条件内容
同一批名单里,大客户和小客户的措辞不该一样。这时用「规则」做条件判断,规则本身也是一段域:
{ IF { MERGE 金额 } > 10000 "感谢您一直以来的支持,本次为您准备了专属权益。" "感谢您的关注。" }
入口在 邮件 → 规则 → 如果…那么…否则,也可以直接改域代码。实际用法大致三类:按客户等级换称呼、按地区插不同联系方式、某字段为空时整段隐藏。
这里有一个很隐蔽的坑:比较是按字段类型来的。如果 Excel 里的金额是文本格式(单元格内容默认左对齐),那么 "10000" > "9000" 会走字符串比较,结果判定为「不成立」。做条件判断前,先把参与比较的字段统一成数字。
04
PART
场景三:一页排多份,做标签与工资条
SCENARIO 03 · 一页多份
默认每条记录独占一页。要做标签、工资条这种「一页多份」的版式,靠的是「下一记录」规则:
{ MERGE 姓名 } { MERGE 金额 }
{ NEXT }{ MERGE 姓名 } { MERGE 金额 }
{ NEXT } 的作用是「跳到下一条记录,但仍留在当前文档里继续排」。把这样一组排版内容复制到铺满一页,就能得到一页四条、一页八条的效果。做工资条时再给每块加上表格边框,注意让块高对齐页面的分页位置。
05
PART
场景四:批量发邮件与导出 PDF
SCENARIO 04 · 发邮件与 PDF
批量发邮件:完成并合并 → 发送电子邮件,填好主题行,选择「全部」或按条件筛选记录,Word 会调用已登录的 Outlook 逐条发出。前提是 Outlook 已经配置好账户;另外这个动作会被邮件服务商视为群发,量大的时候要控制节奏。
导出 PDF:合并到新文档之后直接另存为 PDF,一次拿到整份合订本。如果要求一条记录一个文件,用「合并到打印机」配合系统的 PDF 虚拟打印机,逐个指定输出文件名——Word 不能按记录内容自动命名文件,这是邮件合并一直以来的限制,需要自动命名的场景只能靠脚本。
06
PART
六个常见的坑
PITFALLS · 避坑清单
!数据源首行不是字段名,或者夹着合并单元格与空行 🕳
数据源首行不是字段名,或者夹着合并单元格与空行。结果是字段错位、或者只生成一条,先把源表整理成「一行标题、其余全是数据」再选。
!日期和金额到 Word 里变成了 45678 这类数 🕳
日期和金额到 Word 里变成了 45678 这类数字。因为 Excel 存的是日期序列值,Word 取的就是原始值。解决办法是给域加格式开关:日期写 \@ "yyyy年M月d日",数字写 \# "#,##0.00",加在域代码里。
!手打域代码 🕳
手打域代码。手敲的 { MERGE 姓名 } 属于普通文字,合并时原样保留,必须用「插入合并域」插入。
!看不到域代码 🕳
看不到域代码。默认显示的是合并结果,要查看或编辑域代码得按 Alt+F9 切换显示。
!一页多条记录忘了插「下一记录」 🕳
一页多条记录忘了插「下一记录」。表现是永远只出第一条;复制出来的每一组排版都要带一个「下一记录」。
!条件判断里文本与数字混用 🕳
条件判断里文本与数字混用。文本格式的数字比较大小时按字符串处理,"10000" > "9000" 为假,先把源表字段类型统一成数字。
///
LAST
写在最后
SUMMARY · 一句话收尾
邮件合并最值得的地方在于它是一次投入、长期复用:模板里的域布好之后,以后每换一批名单,只要替换 Excel、重跑一遍「完成并合并」,之前所有排版与条件逻辑都不用动。建议先拿一份最简单的邀请函走通完整闭环,把「源表要干净、域要用按钮插入、记录之间要有下一记录」这三条记牢,剩下的功能都是在这个骨架上加东西。
如果这篇内容对你有帮助,欢迎点赞、在看、转发三连,我们下篇见。
既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。
THANKS FOR READING