1.对象及对象层次结构
对象就是存在的东西,是VBA处理的内容,包括工作薄、工作表、工作表上的单元格区域、图表等等。对象可以相互包含,就像一个文件夹里可以包含多个文件夹一样,而这个文件夹又可以被其他的文件夹包含,一个工作薄对象可以包含多个工作表对象,一个工作表对象又可以包含多个单元格(或图表,图形等),这种对象的排列模式称为Excel的对象模型。
----------
集合这个概念经常遇到,我理解的集合是对相同类型的对象的统称。
某中学有5000个学生,名字各不相同,我们对他们都统称为某中学的学生,而不是一一去叫他们的名字,"某中学的学生"在这里就是集合。
对象的引用,在Excel里,Workbooks集合包含在Application对象里,当我们要引用某工作薄的时候,要遵循从大到小的规则。跟表示硬盘里的某个文件的位置一样,比如我们想引用D盘“我的文档”文件夹下的名为“我的VBA课程.doc”文件时要输入的是:
D:\我的文档\我的VBA课程.doc
同样,如果我们要引用名称为“mybook.xls”的工作薄时就是:
Application.Workbooks(“mybook.xls”)
和引用文件不同的是,VBA里使用的分隔符是点。
同理,当我们引用“mybook.xls”里面的工作表“mysheet”时应是:
Application.Workbooks(“mybook.xls”).Worksheets(“mysheet”)
可以继续延伸到下一层,引用“mybook.xls”里工作表“mysheet”里面的单元格区域“A1

10”:
Application.Workbooks(“mybook.xls”).Worksheets(“mysheet”).Range(“A1

10”)
但是并不是每一次引用都必须这么呆板,就像猪八戒不用每一次都去爬下水管道。如果我们引用的是活动对象,也就是被激活的对象,引用就可以进行简化。
如果是mybook工作薄是激活的,引用可以简化为
Worksheets(“mysheet”).Range(“A1

10”)
如果mysheet当前也是激活的,引用甚至还可以简化为Range(“A1:D10”) ,也可以直接输入[A1:D10],如果引用的单元Range是单个的单元格,还可以用Cells(行号,列号)的引用方式。、
2.属性
每一个对象都有属性,一个属性就是对一个对象的一个设置,引用对象的属性同样也要用点来分隔。一个对象有哪些属性我们可以在属性窗口里查看,要修改一个对象的某种属性,如名称、显示状态、颜色等等,也可以在属性窗口里进行修改,当然我们还可以利用代码进行修改。
3.方法
每一个对象都有方法,方法就是在对象上执行的某个动作。
和属性相比,属性表示的是对象某种状态或样子,是静态的,就像是语文里的名词、形容词和副词,而方法则是做某件事的一个动作,就像动词,对象和方法同样用点来分隔。
4.事件
简单点说,事件就是由用户或者系统触发的,可以在代码中响应的一段代码。比如,当我们移动鼠标,打开工作薄,激活工作表,选中单元格,改变单元格的数值,点击按钮或窗体,敲击键盘等等这些都会产生一系列的事件,通过编写代码响应这些事件,当发生此类事件时,程序代码就会进行相应的操作。