4.1.1 VBA编程与炒菜
菜是怎么炒出来的
巧妇难为无米之炊,再聪明伶俐的媳妇只守着空灶台也煮不出香喷喷的饭菜,必须打开冰箱,取出瘦肉、葱、蒜……然后洗、切、炒,最后大勺一挥,一盘色香味美的鱼香肉丝才能摆上饭桌,如图4-1所示。
图4-1 炒菜的步骤
编程就如炒菜,盘子里的菜就是按炒菜的方法对材料进行加工写出的程序。
VBA编程需要的源材料就是VBA里的对象。
想要编写VBA程序,首先要懂得如何打开“冰箱”,在“冰箱”里找到合适的东西,取出并加工它。
这个“冰箱”在Excel里称为对象模型。
什么是对象模型
就像厨房里的东西一样,Excel中的对像总是层次分明地组织在一起,一个对象可以包含其他对象,也可以包含在其他对象里(参阅3.4节)。
这种对象的排列模式称为对象模型。Excel中的所有对象都可以在对象模型里找到。
怎么打开对象模型
图4-2 打开对象类型
4.1.2 VBA是怎么控制Excel的
VBA通过操作不同的对象来控制Excel
作为一个Excel用户,每天都在重复打开、关闭工作簿,输入、清除单元格内容的操作,这些操作都是在操作对象。
是的,我们每天都在用动作编程。
实际上,VBA程序就是用代码记录下来的一个或一组操作。如想在“Sheetl”工作表的A1单元格输入数值100,完整的代码为:
无论是用动作还是用代码,都是在操作对象。
所以,编写VBA程序,就是利用VBA语句引用对象并有目的地操作它。
4.1.3 应该记住哪些对象
VBA编程就像炒菜
菜市场的菜花样繁多,买菜时应该买什么?红烧鱼很香,但家里从来不吃,买菜时要不要买?
买菜只买需要的,而不用买下整个菜市场。认识对象也是如此,并不用记住所有的对象,只需要熟悉它的结构和组成,记住经常的即可。对于那些不常用或根本不会用到的,只要在需要用到时能熟悉打开帮助菜单,像查字典一样找到它就够了。
偶尔那么一天,忽然想吃红烧鱼了,出门打个的,告诉司机:“菜市场!”一去一来,十五分钟,搞定!
应该记住哪些常用的对象
不买的菜坚决不买,要买的也千万不要落下。
菜市场,一去一来,十五分钟,的确不远。
但是菜洗好了,发现没有买油,然后出门打的……
十五分钟后,炒菜炒到一半,却发现没有买辣椒,于是,再一次出门打的……
又十五分钟后,菜快炒好了,忽然发现没有买葱……
最后的最后,鱼香肉丝终于端上了餐桌。来之不易的饭菜,真不简单。
存在冰箱里的当然是生活常用品。
学习VBA,需要记住哪些常用的对象?想一想,日常工作中经常会操作哪些对象(见表4-1)。
表4-1Excel VBA常用的对象