(已解决) 把 Excel 格式化模板以工作表方式添加

大佬们,下午好!

我有一个名为 "检查记录" 的 Excel 文件,该文件中包含两个工作表,一个叫 "基础数据",一个叫 "模板"。模板工作表是经过格式化的,设置了一些固定的样式,如下所示:

imagepng
上述模板中 A5 到 A18 行也是固定的行数,也就是说,模板就是一个总共 20 行的样式。

基础数据工作表就是数据源,部分数据截图如下:

imagepng

需求就是,根据基础数据中 B 列所在的管线号分组,按照模板填入相应的内容,模板中第 2 行第 3 行对应的项目在基础数据中找不到的可以不填。填好内容后,要用模板格式以工作表的形式添加到同一个工作簿中(此例中的工作簿就是检查记录工作簿),工作表名称用分组的管线号命名。特别地,如果基础数据表中黄色表头对应的数据行数超过了模板中的 A5 至 A18 区域,就要重新写一个工作表添加,并命名为 "对应的管线号 -1",“对应的管线号 -2”…,以此类推。

我自己尝试了一下,发现以我目前所掌握的 spl 对 excel 的操作,似乎只能把模板对象用 xlswrite 的方式保存为另一个工作簿,并不能把 xlsopen 对象以工作表的形式添加。所以,有以下困惑:

1、如何以工作表的形式添加带格式的表?常规的添加都是没有格式的序表或者游标;

2、xlswrite 保存的是整个 xlsopen 工作簿对象,可否只保存 xo 对象中的某个工作表;

恳请大佬们得闲时给予帮助指导。文中涉及的文件一并附上,可以放心执行 VBA 按钮 (没有病毒) 查看结果:

VBAxlsmzip