EXCEL必备工具箱--批量生成Word文档功能,批量生成格式相同数据不同的Word文档,比邮件合并更方便
EXCEL必备工具箱,一款自带免费多标签的EXCEL工具箱,同时支持office和WPS,绝大部分操作可撤销。
下载地址:https://www.ahzll.top/HELP/PAGE/blog_5488e3a901000ayc.html
本功能共两个步骤:
第一步、模板套用:
点击“模板套用”菜单后会出现一个窗口:
也可以选否,使用自己定义的模板:
套用模板后的情况:
上表已经套用了模板,表格里的内容和模板都可以随便编辑,只要符合上面的要求。
第二步、模板计算
在保持该表格为当前表的情况下(切记),点击模板、模板计算:
会出现下面的界面:
选择保存文件夹:
批量生成Word文档后会提示:
点确定,会直接打开批量生成的word文档所在的文件夹:
动画演示:
关于导入图片的单独说明:
(因不少用户希望批量生成的图片能够支持图片,所以特意增加):
(1)在Word模板中,设置数据来源是这样的,比如:[图片E],可以发现比上面的只是获取一般数据增加了图片两个字,在当前EXCEL表中对应列,这里是E列就需要输入图片的名称,比如:A公司.jpg(由于没有写明图片文件所在文件夹,所以会自动从当前EXCEL文档所在文件夹查找该图片文件),或者直接写上带文件夹的文件名,比如:D:\图片\A公司.jpg,如图:
(2)如果还想统一调整图片显示大小,在Word模板中设置的数据来源也可以是这样的,比如:[图片宽度6厘米#E],比常规的多了“宽度6厘米#”这几个字符,图片显示高度Word会自动按比例缩放。依此类推:[图片高度5厘米#E],这种格式是指定了图片高度,图片宽度自动缩放;还可以同时指定图片宽度和高度 :[图片宽度6厘米#高度5厘米#E]
示例:
(3)如果希望导入Word文档中的图片能够压缩大小,或者调整宽度和高度的比例,请用工具箱,图片工具,调整图片大小和格式功能先予以调整。
(4)如果批量生成的Word文档中不需要导入图片,只需要把模板中的图片数据源删除掉即可。
一个Word文档从数据源表中获取多行数据:
需要勾选:支持一个Word文档取多行数据。
点确定后,会完成模板套用。
在生成的excel表格中,有相关说明:
本模板其他都与普通“批量生成WORD文档”模板完全一致,特殊的地方说明如下:
为了解决本表(数据源)与模板文档表格中多行的对应关系,系统采用了如下设定:
1、A1单元格必须保持[Name]不变,这样确保A列作为生成结果的文件名;
2、A列中1个合并单元格,对应一个生成的Word文档;如果这个合并单元格行数多余一行,就可以对照模板文档中的多行数据;
提醒:如果不想合并单元格也可以,那么这个合并单元格所在区域都要写上相同内容,比如:A2:A5这四个单元格都要分别写上张三
系统只会把连续相同内容的作为多行取数,如果隔了其他内容再次出现,就会认为是非法同名(建议先进行排序,再进行模板计算)。比如:A2:A5这四个单元格都是张三,OK;如果钱七后面再出现张三,就提醒有重名,不允许继续操作。
3、模板文档中,可以继续使用[A],[B],[C]…之类的取数设定,但如果要去合并单元中的第二行,在模板设置中就的加上“行2”,比如:[B行2];第三行,就是[B行3],以此类推;
4、模板文档中可以设置从N行取数,比如设置成[B行5],但当前表(数据源)中最多的也只是张三,只有4行。没关系,这些多出的取数设置,在生成的结果文档中会被自动忽略。
打开当前表格里嵌入的名字为模板的word文档,会看到与上面想匹配的设置,用于解决多行取数问题:
其他地方设置和操作都类似,故不再详细叙述。
补充说明:
如果出现这个提示:
无法将类型为“Microsoft.Office.Interop.Word.DocumentClass”的COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Document”。此操作失败的原因是对IID 为“{0002096B-0000-0000-C000-000000000046}”的接口的 COM 组件调用QueryInterface 因以下错误而失败: 库没有注册。 (异常来自 HRESULT:0x8002801D(TYPE_E_LIBNOTREGISTERED))。
比较简便的办法,把电脑上安装的office和wps都卸载,然后重新安装office或wps,通常可以解决。
如果还不行,请参阅:无法将类型为DocumentClassCOM对象强制转换为接口类型.Interop.Word._Document的解决方案,网址: https://www.ahzll.top/HELP/PAGE/blog_5488e3a90102xpca.html
改进记录:
15.21版改进:允许一个Word文档从数据源表中获取多行数据(需要勾选:支持一个Word文档取多行数据,在后面单独介绍)。(默认不勾选,是数据源表格中一行对应一个Word文档)
15.30版改进:如果上一个取数对象是图片,下面该文档所有取数存在都当做图片处理的问题,已经改进。
15.10版改进:支持导入图片,在后面会单独说明)
15.84版改进:如果模板没有页眉,在生成的目标文档中也不会出现空页眉。
16.01版改进:原来存在的问题:生成的word文档中如果插入图片后,只能再导入一个非图片的数据。现在已经改进。
16.15版改进:原来存在的问题:生成的word文档中如果插入图片后,只能再导入一个非图片的数据。现在已经改进。
16.30版改进:
(1)极个别word文档模板会出现“方法无效,因为是最后一节”的提示,已经改进。
(2)对word模板中有多个表且多行取数的情况进行了优化。
16.40版改进:部分多行取数的用户,第一组数据可以正常取数,第二组数据时就取不到数,这个问题已经改进。
16.60版改进;增加了“生成word文档后,强制删除word文档中表格里的空行”选项。
17.22版改进:有不少网友强烈反映,说【生成word文档后,强制删除word文档中表格里的空行】选项无效,根本无法删除空行,实际上是因为这些表格虽然其他内容为空,但序号列却每行都有内容,所以增加了【序号列的内容也视同为无内容】选项,在正确选择序号在模板表格所在列后,就可以全面删除表格里所有空行。
18.45版改进:如果作为文件名的单元格内容里面有不能作为文件名的字符,会导致生成报错,已经可以自动去掉文件名中不合法的字符。
18.54版改进:如果出现错误提示:无法将类型为“Microsoft.Office.Interop.Word.DocumentClass”的COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Document”,已经增加自动提醒,是否打开查看详细解决方案。
19.0版改进:在进行【模版计算】的窗口中增加了【导入的图片浮于文字上方】选项,这样可以让让导入后的图片浮于文字上方。
19.10版改进:增加了选项【导入的图片未找到时不提示异常】,因为有的用户设置的模板不需要每个导入位置有对应图片,如果不勾选这个选项,这些位置就会提示:xx图片没有找到。
19.20版改进:部分新用户对选择内部模板还是外部模板感觉有点迷茫,已经对这个功能的【模板计算】界面进行了优化,更加友好。
19.30版改进:
(1)【批量生成Word文档】、这个功能在进行【模板计算】时,可以选择docx格式的模板。
(2)批量生成word文档,在word下部分用户的最终生成结果出现字体从宋体变成了等线体,已经改进。
19.40版改进:
(1)19.30版用户反馈,word模板中的【页眉页脚】中的内容没有替换成对应的excel内容,已经修复,并且支持多个【节】里面的页眉页脚。
(2)用于文件名的单元格内容原来有"."时会提示:“拟生成的文件名不能带有扩展名”,现在已经允许这里的内容含有“.”
(3)增加了指定图片高度的参数,比如: [图片宽度6厘米#E] ,比常规的多了宽度6厘米#”这几个字符,图片显示高度Word会自动按比例缩放。依此类推:[图片高度5厘米#E],还可以同时指定图片宽度和高度 :[图片宽度6厘米#高度5厘米#E]