WORD邮件合并功能批量打印带照片证件&一页显示多个信息和照片
个人日记 2010-10-13 17:00:57 阅读938 评论2   字号:大中小 订阅
工作证上面要求打印每个人的照片。
经过了解,具体工作要求是,打印一批工作证,员工基本信息来自数据库,包含员工信息的员工数据库.mdb”中的员工库表如图
员工照片放在e:\photo文件夹里,每位员工的照片文件名和编号相对应。比如张三的照片名就是001.jpg
马上想到了用Word邮件合并可以批量打印员工基本信息
使用邮件合并也能实现此要求的方法。
实现思路:
使用过邮件合并的人都知道实质上邮件合并使用的是域,那么要想实现照片的自动处理应该从域上突破口。
Word中插入图片可以用IncludePicture 域来实现,具体语法为IncludePicture "文件名"
插入照片的功能解决之后,问题就转换为如何实现自动转换文件名的问题。
而照片的名称为了管理的方便通常都是使用编号作为文件名,这样使用编号域即可解决问题。
那么怎么实现文件名的自动转换呢?方法就是——把两个域嵌套起来!
操作步骤:
1.打开word,从视图菜单选择工具栏邮件合并
2.从邮件合并工具栏上依次选择按钮,设置文档类型为信函
3.单击打开数据源按钮浏览选取准备好的数据库;
4.然后设计主文档、排版、设置纸张,并通过邮件合并插入只包含文字的域,排版结果如图
5.下面是关键的一步:就是照片域的实现:
先把光标定位在要插入照片的地方,按Ctrl+F9插入一个域,输入“IncludePicture "e:\\photo\\”再按Ctrl+F9插入一个域,输入“MergeField "编号"”,光标定位到这个域之后输入“.jpg"”,最后看到的结果应该是:
{IncludePicture "e:\\photo\\{MergeField "编号"}.jpg"}
6.然后单击合并到新文档按钮,切换到生成的新文档里,咦,怎么照片处什么都没有?不会是上当了吧?
别急,保存生成文件,按Ctrl+A全选,再按F9,哈哈,每位员工对应的照片是不是全出来了。
如图
注意事项:
1      WordIncludePicture 域中文件名的路径用“\\”代替“\”
2      IncludePicture域同样支持长文件名。比如可以写:
{IncludePicture "D:\\Documents and Settings\\Administrator\\桌面\\Word邮件合并实现批量打印带照片证件\\邮件合并\\photo\\005.jpg"}
3      IncludePicture域中的文件名路径可以使用相对路径和绝对路径。比如可以写:
{IncludePicture "邮件合并\\photo\\005.jpg"},文件保存后则会从文档所在的文件夹下去对应文件。
4    特别注意,引号内的文件名一定不能写错甚至多加一个空格也不行,否则Word将不到图片文件,只会出现一个红叉。比如不能写成:
{IncludePicture " e:\\photo\\{MergeField "编号"}.jpg"},因为e:前多加了空格。
小结:
实际上插入一张照片使用的域是{IncludePicture "e:\\photo\\001.jpg"},插入编号域用的是{MergeField "编号"},而本文把这两个域嵌套起来就成了{IncludePicture "e:\\photo\\{MergeField "编号"}.jpg"}从而实现了本文最初提出的要求。
拓展:
本文提到的方法既省去了麻烦的程序代码,也不需要一分钱的的共享软件费用。只要稍加变
通就可广泛应用在打印学籍、证件、准考证、档案上。
WORD的邮件合并功能批量打印带照片证件
平时每学期的学生奖状、成绩单,毕业生的毕业证书等都通过WORD邮件合并功能来实现批量套打,大大减轻了以往手工一张一张填写的劳作强度。
Word相册里图片怎么合并成一张图中插入图片可以用IncludePicture 域来实现,具体语法为IncludePicture "文件名"。插入照片的功能解决之后,问题就转换为如何实现自动转换文件名的问题。而照片的名称为了管理的方便通常都是使用编号(如学籍号)作为文件名,这样使用编号域即可解决问题。
那么怎么实现文件名的自动转换呢?方法就是——把两个域嵌套起来!
操作步骤:
1、打开word,从视图菜单选择工具栏邮件合并
2、从邮件合并工具栏上依次选择按钮,设置文档类型为信函
3、单击打开数据源按钮浏览选取准备好的数据库;
4、然后设计主文档、排版、设置纸张,并通过邮件合并插入只包含文字的域。
5、下面是关键的一步:就是照片域的实现:
先把光标定位在要插入照片的地方,按Ctrl+F9插入一个域,输入“IncludePicture "e:\\photo\\”再按Ctrl+F9插入一个域,输入“MergeField "编号"”,光标定位到这个域之后输入“.jpg"”,最后看到的结果应该是:{IncludePicture "e:\\photo\\{MergeField "编号"}.jpg"}
注:e:\photo\是照片存放的地址。
6、然后单击合并到新文档按钮,切换到生成的新文档里,咦,怎么照片处什么都没有?不会是上当了吧?
别急,保存生成文件,按Ctrl+A全选,再按F9进行刷新,哈哈,每个学生对应的照片是不是全出来了。
注意事项:
1WordIncludePicture 域中文件名的路径用“\\”代替“\”
2IncludePicture域同样支持长文件名。比如可以写:{IncludePicture "D:\\Documents and Settings\\Administrator\\桌面\\Word邮件合并实现批量打印带照片证件\\邮件合并\\photo\\005.jpg"}
3IncludePicture域中的文件名路径可以使用相对路径和绝对路径。比如可以写:
{IncludePicture "邮件合并\\photo\\005.jpg"},文件保存后则会从文档所在的文件夹下去对应文件。
4、特别注意,引号内的文件名一定不能写错甚至多加一个空格也不行,否则Word将不到图片文件,只会出现一个红叉。
小结:
实际上插入一张照片使用的域是{IncludePicture "e:\\photo\\001.jpg"},插入编号域用的是{MergeField "编号"},而本文把这两个域嵌套起来就成了{IncludePicture "e:\\photo\\{MergeField "编号"}.jpg"}从而实现了本文最初提出的要求。