ExcelVBA实现一键生成word文字报告及批量操作[原创]

您所在的位置:网站首页 编程自动生成word文档 ExcelVBA实现一键生成word文字报告及批量操作[原创]

ExcelVBA实现一键生成word文字报告及批量操作[原创]

2023-09-20 01:58| 来源: 网络整理| 查看: 265

在很多工作中,经常需要写一些类似的报告,使用同一个模板,只是里面的数据不同,人工操作工程量大且容易出错,如果能用程序直接实现可以省去不少麻烦。

本文使用ExcelVBA实现,主要思路是使用word邮件合并功能,将word文字报告与Excel数据链接,不太了解邮件合并功能的戳:http://xinzhi.wenda.so.com/a/1517858371619706

本文内容适用于 快速填写word表格,快速填写一套word表格,根据excel表及一个模板文件快速生成文字报告,根据同一个excel表多个模板文件快速生成多个不同的文字报告。

本文使用office2007,最后一次使用office2016。

 1,创建一个word文档作为模板,存为doc格式,命名为 模板。

2,创建一个Excel存放数据,将数据的名称输入至sheet2第一行,保存为xlsm格式,命名为 数据

以sheet1为源数据表(sheet1是之后输入数据的地方,只是为了纵向方便输入)

3,打开word采用邮件合并功能将刚刚创建的word模板与Excel数据文件链接,选择sheet2

插入合并域

4,打开Excel的vb编辑器(在设置中打开开发工具),插入模块,在模块中输入以下代码:

Sub merge() Dim sh1 As Worksheet Set sh1 = Worksheets("Sheet1") Dim sh2 As Worksheet Set sh2 = Worksheets("Sheet2") '将sheet1的数据转换到sheet2中 '-----------------单元格对应------------------------- sh2.Range("A2") = sh1.Range(&#


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3