本帖最后由 roy986 于 2026-8-12 14:49 编辑
瑞意邮件合并工具 V1.0
分享自用邮件合并工具,交由Claude用python编写的邮件合并(批量套打)工具:读取 Excel 数据表,把 Word 模板里的占位符替换成每一行的数据,生成单、多文件。兼容 WPS 和 Office 生成的 docx,支持正文、表格、文本框、页眉页脚里的占位符,也支持插入图片,处理完成后自动打开输出目录。网络上找过几个,试用后发现统统不支持文本框,单文件输出也都失效了,于是用AI写了一个还增加了功能,如支持图片替换,输出特定数据行,自动打开输出文件夹,win10/11下测试正常,Win7不支持,欢迎大家测试使用。
使用说明 1、界面说明 文件选择:选模板(.docx)、选数据表(.xlsx)。单文件合并(分页拼接):勾选后所有记录合并进同一个文件,每条记录独占一页(分页符隔开);不勾选则每条记录单独生成一个文件。两种模式的区别和限制见下文"单文件 vs 多文件"。完成后自动打开文件夹:合并结束后自动弹出输出文件夹。文件名前缀字段:从数据表表头里选一个字段(比如"姓名")作为多文件模式下的输出文件名;不选就按"记录1"、"记录2"顺序命名。单文件模式下不需要这个,固定生成一个"邮件合并结果.docx"。开始邮件合并:跑起来,下方会实时显示进度和处理日志。下次打开程序会自动恢复上次用过的模板/数据表路径和各项设置。
2、模板占位符语法
A、普通文字占位符 {{字段名}},字段名要跟数据表表头文字完全一致,比如 {{姓名}}、{{部门}}。可以出现在:正文段落、表格单元格、文本框(WPS/Office 新旧两种文本框格式都支持)、页眉、页脚同一个占位符里的文字加粗、变色都不影响识别和替换,不用刻意保持格式统一。 B、图片占位符 {{IMG:字段名}},数据表对应列填图片文件的路径:支持绝对路径,或相对于数据表所在文件夹的相对路径。比如数据表在 C:\mergedata.xlsx,某行该列填 photoszhangsan.png,实际会去找 C:\mergephotos\zhangsan.png。想指定图片宽度:{{IMG:字段名:3}},数字是宽度(厘米),高度自动按原图比例缩放。不写宽度就用图片原始大小。图片占位符周围的文字、格式会保留,比如"头像:{{IMG:头像}}"合并后就是"头像:"+图片。某行对应的图片文件找不到时不会中断整个合并,日志会提示,该位置保留原始占位符文字方便你回头检查。单文件、多文件两种模式都支持。
3、数据表规则
.xlsx 格式,第一行是表头(对应模板里的字段名),从第二行开始是数据。数据行筛选(可选):加一列,列名叫"是否处理"(也认"启用"或"处理"),想处理的行填"是"(也认 是的/要/需要/true/yes/y/1/√/on,不分大小写),其余行会被跳过、不生成文件。不加这一列就照常处理全部数据行。
4、单文件 vs 多文件模式
| 多文件模式 | 单文件模式 | 输出 | 每条记录一个独立docx | 所有记录合并成一个docx,分页隔开 | 页眉/页脚占位符 | 每份文件各自正确替换 | 统一用第一条记录的数据填充(技术限制:一份docx里所有页共用同一份页眉页脚定义,没法像正文那样每页显示不同内容) | 图片 | 支持 | 支持(内部会自动处理图片数据的搬运,避免出现"空白图片"问题) | 如果你的页眉页脚里也放了占位符、且希望它随每条记录变化(比如页眉要显示每人的姓名),请用多文件模式。
![]() ![]()
5、输出位置
生成的文件保存在程序所在目录下的"邮件合并结果"文件夹里,运行时会自动创建,输出结果后会弹出结果文件夹。
6、记住设置 / 清空记忆
上次用过的模板路径、数据表路径、各项勾选设置会保存在程序目录下的 mail_merge_config.json 文件里,下次打开自动恢复。想清空记忆,删掉这个文件即可。
已知限制
● 只支持 .xlsx 数据表和 .docx 模板,不支持旧版 .doc/.xls。
● 单文件模式下页眉/页脚只能用第一条记录的数据(见上文"单文件 vs 多文件模式")。
● 图片占位符对应的文件找不到时会保留占位符文字,不会自动补空白图或报错中断。
下载地址,蓝奏云:https://wwanq.lanzouv.com/b01euoij4h,密码:18uu |