到目前为止,VBA是Excel中最复杂的功能,你很容易被它难倒。在这里先简要介绍一下VBA的工作原理: ●VBA模块由过程组成。一段过程本上是执行某些操作的计算机代码。下面是一个叫做ShowSum(计算1+1的和并显示结果)的简单子过程的例子: Sub ShowSum() ●VBA模块还可以保存函数过程。函盘过程能执行计算并返回一个值。函数可以从另一个VBA过程中调用,甚至可以用于一个工作表公式。下面是一个名为AddTwo(这是求两个值的和,这两个值作为参数提供)的函数的例子。 Function AddTwo(arg1,arg2) ●VBA操作对象。Excel提供超过100类可供操纵的对象。例如,对象包括工作簿、工作表、工作表中的区域、图表和矩形等。 ●对象分层排列,并可作为其他对象的容器。例如,Excel本身就是一个叫做Application的对象,它包含其他一些对象,如workbook对象。workbook对象也可包含其他对象,如worksheet对象和Chart对象。worksheet对象可包含Range对象, Pivot Table对象等。这些对象的布局被称为对象模型。 ●类似于构成集合的对象。例如,worksheet集合由特定工作簿中的所有工作表组成。ChartObjects集合由工作表中的所有图表对象组成。Collections是其本身的对象。 ●在VBA代码中,可以通过指定对象在其对象层中的位置来引用这个对象,并使用句号作为分隔符。 ●如果忽略特殊引用,Excel会使用活动对象。如果Book1.xlsx是活动工作簿,前面的引用可简化为: ●对象有属性。席位被认为是对象的设置。例如,Range对象有诸如Value和Address之类的属性,Chart对象有HasTitle和Type属性。可以使用VBA来决定对象的属性并改变它们。 ●通过以句号作为分隔符结合对象和属性来引用属性。例如,可引用Sheet1上单元格A1中的数值,如下所示: ●可以给变量赋值。要把Sheet1上单元格A1中的数值赋给叫做Interest的变量,使用以下VBA语句: ●对象还有方法。方法是对象所进行的操作。例如,Range对象的其中一个方法是 ●通过利用句号结合方法和对象来指定方法。例如,要清除单元格A1的内容,使用下列语句: ●VBA也包括现代编程语言具有的全部结构,包含变量、数组、循环等。 |