ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 38919|回复: 48

[原创] WORD2010的带图片的邮件合并

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-5-28 23:59 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
利用Word的邮件合并向导,很容易就可以完成很多邮件合并的工作。但是,如果要合并的文件中包含有图片的话,则可能需要额外的设置。本文主要讨论如何在邮件合并中插入图片,并且每个记录中的图片都各不相同。

首先制作好模板,并通过邮件合并向导完成初步的设置。
2012-5-28 22-49-30.jpg
接下来,在最右边的地方(也就是放照片的地方),插入一个INCLUDEPICTURE的域。可以通过“插入-文档部件-域”来插入,也可以手动输入。手动输入的话,务必要记得大括号({ })一定要通过组合键“Ctrl+F9”来输入,而不是直接输入。插入后如下图所示:
2012-5-28 23-10-17.jpg
将鼠标光标置于域中(深灰色部分),按“Shift+F9”显示图片。如果图片显示为红x,则选中该图片,并按“F9”更新域,此时图片应该可以正常显示。
2012-5-28 23-13-24.jpg
接下来,便是根据源数据完成并合并新的文档了。
这里需要说明的有:1)如果不使用 IF TRUE,图片可能无法正常显示(每个记录都显示相同的图片)。在Word 2003和2007中,可以不使用IF TRUE,而是在合并新文档后,通过“Ctrl+A”,然后按“F9”来更新所有的图片(这个未经测试)。2)如果需要调整图片的尺寸,可以在模板中先进行调整。那么邮件合并后的图片也会跟模板的图片一样的大小。但是,如果没有插入“\* MERGEFORMAT”这段代码,则合并后的图片,都会根据源文件自行调节大小。3)代码“\d”可以不添加,但是可能会导致在找不到图片的情况下,自动显示为最后一个有图片的记录的图片。4)必须为每个记录中的“照片”指定一个路径(即使路径是错误的),而不能没有记录,否则在合并时,每个记录都会跳出错误的提示框。
技巧:如果要更灵活的放置图片在模板中的位置,可以在Word中绘画一个文本框,并把文本框的形状轮廓设置为“无轮廓”,然后在文本框中输入域代码。这样的话,图片就会出现在文本框里面了。
以上在Word 2010中测试通过。源文件下载链接: MailMerge with Pictures.zip (47.03 KB, 下载次数: 1732)

评分

2

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-6-13 10:52 | 显示全部楼层
我好像没有遇到这个问题。确保你没有改动图片的位置。

TA的精华主题

TA的得分主题

发表于 2014-6-13 09:35 | 显示全部楼层
遇到一个问题,保存后,再打开word,图片就不显示了,不知道怎么回事

TA的精华主题

TA的得分主题

发表于 2014-6-12 16:14 | 显示全部楼层
学习了!非常有用!if true这条好棒!

TA的精华主题

TA的得分主题

发表于 2013-1-8 13:57 | 显示全部楼层
试了很多次,居然忘了自己是用2010的版本。。。。。。

TA的精华主题

TA的得分主题

发表于 2013-1-8 14:19 | 显示全部楼层
这是个好工具啊。感谢分享啊。

TA的精华主题

TA的得分主题

发表于 2013-1-8 14:38 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-3-28 13:08 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
我试过,还是不行
还是出现那个报错的信号

TA的精华主题

TA的得分主题

发表于 2013-4-14 12:43 | 显示全部楼层
请教下如果直接把includepicture域放入文档中后,为何就再也切换不到域代码了呢?谢谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-4-17 14:54 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
按Alt+F9可以隐藏或者显示域代码。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-21 18:41 , Processed in 0.035996 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表