Excel服务器2010教程
  • 1.1 Excel服务器是信息系统工具
  • 1.2 用Excel服务器构建信息系统
  • 1.3 基于Excel服务器的信息系统架构
  • 1.4 如何学习使用Excel服务器
  • 2.1 安装概述
  • 2.2 服务端安装
  • 2.3 客户端安装
  • 2.4 Excel服务器的组成模块
上一节 下一节

23.1 VBA编程概述

23.1.1 VBA编程环境

Visual Basic工具栏

在Excel工具栏的任意一处点击鼠标右键,从弹出菜单中选择“Visual Basic”,出现Visual Basic工具栏,如下图:

HyperSnapClipImage

图 23‑1 Visual Basic工具栏

VBA编辑器

点击Visual Basic工具栏上的

HyperSnapClipImage,可进入Visual Basic编辑器,如图:

图 23‑2 Visual Basic编辑器

还有一种进入VBA编辑器的方法:点击菜单“工具 宏 Visual Basic编辑器”

通过帮助学习VBA编程

在VBA编辑器中点击“帮助”菜单,可看到打开Visual Basic联机帮助,您可以系统、完整地学习VBA编程的有关内容。

利用按钮和窗体等控件

点击Visual Basic工具栏上的

HyperSnapClipImage,弹出控件工具箱,其中列示各种文本框、复选框、按钮等各种控件,若想在工作表上添加一个控件,可先在控件工具箱中单击此控件,然后在工作表上单击,该控件会出现在相应位置,您可以进一步修改它的属性或添加事件处理程序。

HyperSnapClipImage

图 23‑3控件工具栏

23.1.2 Excel对象模型

从编程的角度来看,Excel的各个组成部分都称为对象,一个工作簿是一个Workbook对象,其中的每个工作表是Worksheet对象,一个单元格是range对象,等等。每种对象都有一定的“属性”。比如说,Range对象有一个value属性,代表单元格中的内容,这样,当我们想得到A4单元格的值时,就可以写这样一行代码:

x=range(“A4”).value

对象还有一定的“事件”和“方法”,比如说,workbook对象有一个beforePrint事件,当用户打印工作簿文件时发生,这样,如果我们希望在打印前提醒用户检查打印机,就可以写下面的这段代码。

Private Sub Workbook_BeforePrint(Cancel As Boolean)

    MsgBox "请检查打印机,然后按确定。"

End Sub

下表列举了Excel的常用对象及其属性和方法

对象名

含义

属性 / 方法

 

属性 / 方法含义

Workbook

工作簿

Worksheets

属性

属性,所包含的工作表集合

Worksheets

工作表集合

Count

属性

集合中包含的工作表数

Worksheet

工作表

Name

属性

工作表名称

 

 

PrintOut

方法

打印

 

 

PrintPreview

方法

打印预览

Range

单元区域 ( 格 )

Address

属性

区域地址

 

 

Row

属性

左上角行号

 

 

Column

属性

左上角列号

 

 

Rows

属性

包含的所有行

 

 

Columns

属性

包含的所有列

 

 

Value

属性

 

 

Formula

属性

公式内容

 

 

Select

方法

选中区域

打开Excel的联机帮助,在目录树中展开“编程信息”,可看到Excel的对象模型,如下图所示。从中您可以详细了解每一种对象及其属性和方法的含义、用法。

图 23‑4 Excel对象模型

23.1.3 事件驱动的编程

如前所述,Excel中的工作簿、工作表、单元区域、单元格、工具栏等都是对象,每类对象都有自己的一套属性、方法和事件。“事件”在用户操作后发生,比如“保存”是一个事件,“打开”某个工作簿是一个事件,在某单元格中“输入”内容是一个事件,点击一个按钮还是一个事件。如果我们希望在完成某项操作的时侯执行某段程序,就要把这段程序写在该操作对应的事件处理程序中。

常用的事件有

对象

操作

事件处理程序

工作簿

打开

Workbook_Open

 

关闭

Workbook_BeforeClose

 

保存

Workbook_BeforeSave

 

打印

Workbook_BeforePrint

工作表

双击

Worksheet_BeforeDoubleClick

 

右击

Worksheet_BeforeRightClick

 

选中区域 / 单元格

Worksheet_SelectionChange

 

改变单元格内容

Worksheet_Change

 

激活

Worksheet_Activate

上一节 下一节