说明:本文例子基于excel2010,其他版本类似
一、eom模型
在学习宏前,先了解下什么是eom模型。
EOM:Excel Automation Object Model,excel的自动化模型对象。既然需要使用EOM就必须先要对其进行引用,引用完之后方可对其封装的所有方法进行调用,并对excel进行自动化。excel的组件和类名分别为Excel和Application。下图展示部分excel对象模型
说明:
application—>此主对象引用Excel本身。
Workbooks—>此对象引用当前打开的所有Excel工作簿集合
Workbook—>此对象引用单个已打开的Excel工作簿对象
Worksheets—>此对象引用已打开且被选中的工作簿中的工作表集合
Worksheet—>此对象引用已打开且被选中工作簿中的单个工作表
问题1:如何调用和关闭Excel实例
问题2:如何新建并保存Excel工作表
二、动态加载并运行宏代码
通过上面例子,了解了如何使用EOM自动化模型来对Workbook和WorkSheet进行自动了,下面我们学习动态加载并运行宏代码
excel本身有个相当强大的功能,那就是宏,英文为Macro,宏的作用可以让用户自行定义一些操作,并通过计算机进行自动化,本文主要讲述宏的动态加载和运行。
场景:对工作簿year的shell1中所有“2017”更改为“2018”,所有“2016”更改为“2017”,“2015”更改为“2016”,且保存为.xlsx格式
1、准备需要改动的excel文件,保存路径为:E:\测试\qtp_test\data\年份\year.xlsx
2、创建需要加载的宏函数文件,存放路径设置为:E:\测试\qtp_test\lib\ply.cls
文件内容如下:
3、qtp脚本如下,脚本中有详细注释,在此不再做解释,相信读者能看明白
建议:如果读者想要了解更多excel的自动化功能,建议参考Excel VBA/宏编辑书籍