资源描述
第8章 Access的编程工具VBA
教学内容
1. VBA编程环境;
2. VBA的数据类型及运算;
3. VBA程序流程的控制;
4. VBA数组的概,念及用法:
5. VBA模块的创建:
6. VBA的数据库编程。
教学要求
【知识目标】
1. 理解VBA的基本概念;
2. 了解VBA的编程环境;熟悉在窗体上调用VBA代码的方法;
3. 熟悉和掌握Access程序设计的过程;
4. 理解并掌握三种程序控制结构。
5. 理解各种变量类型的使用范围及定义方法;
6. 掌握过程和常用函数的调用方法;
7. 掌握数组的基本使用方法;
8. 理解模块的概念;
9. 了解并掌握用ADO接口访问数据库的一般方法。
【技能目标】
1. 掌握在模块中创建Sub过程、函数过程的方法;
2. 掌握在不同过程中通过参数的传值实现数据的传递方法;
3. 掌握使用ADO和ADO对象对数据库进行操作的方法;
4. 能利用VBA代码完成对象的操作。
教学重点
1. VBA程序设计;
2, 模块的创建和使用。
教学难点
1.用ADO接口访问数据原的一般方法;
3.编写VBA代码。
教学方法
讲授法、案例法、演示法
课时数
20课时(授课10课时,实验10课时)
课程导入
【思路】
(1) 举例:在窗体上单击鼠标,输入姓名后,窗体上显示欢迎等字样。
(2) 分析:ACCESS的特点之一是不须编程,即可创建简单的应用系统。 但这样的系统功能有限,有时无法满足用户的要求。如上例。
(3) 引出:编程的好处在于:
■增强系统功能
■满足用户要求
■ 方便系统维护
中断模式代表VBA程序的一种运行状态。在中断模式下,程序暂停运行,这时编程者 可以查看并修改程序代码,检查各个变量或表达式的取值是否正确等。有两种情况可以使 程序进入中断模式。一种是如果程序出现错误,无法继续执行,则会自动进入中断模式。 第二种是通过设置断点,或在程序运行过程中单击“中断”按钮人为进入中断模式。
8. 6.1错误类型
编程时,可能产生的错误有4种:语法错误、编译错误、运行错误和逻辑错误。
1. 语法错误
语法错误是指输入代码时产生的不符合程序设计语言语法要求的错误,初学者经常发 生此类错误。
2. 编译错误
编译错误是指在程序编译过程中发现的错误。
2. 编译错误
编译错误是指在程序编译过程中发现的错误。
4.逻辑错误
如果程序运行后,得到的结果和所期望的结果不同,则说明程序中存在逻辑错误。
8. 6.2程序调试方法
为了帮助编程者更有效地查找和修改程序中的逻辑错误,VBE提供了几个调试窗口, 分别是立即窗II、本地窗II和监视窗II。
1. 设置断点
在程序中人为设置断点,当程序运行到设置了断点的语句时,会自动暂停运行并进入 中断状态。
2. 单步跟踪
也可以单步跟踪程序的运行,即每执行一条语句后都自动进入中断状态。
3. 设置监视点
如果设置了监视表达式,一旦监视表达式的值为真或改变,程序也会自动进入中断模 式。
8.7 VBA的数据库编程
讲授+演示
【思路】
在讲解8.6节时,通 过分析讲解教材中的 实例,让学生理解其 中涉及的相关概念, 掌握VBA数据库编程 的方法。
注意:讲清相关的概 念。
本节主要讨论如何在VBA程序中访问Access数据库。目前普遍采用各种接口访问各 种数据库等数据源,这里主要介绍ADO接口及其使用方法。
8. 7.1数据访问接口 ADO
1. 什么是ADO?
ADO (ActiveX Data Object)即 ActiveX 数据访问对象,是 Microsoft 公司在 DAO (数 据访问对象)、RDO (远程数据对象)之后推出的新的数据访问对象。
2. 在VBA中引用ADO类库
ADO采用面向对象方法设计,各个对象的定义被集中在ADO类库中。要使用ADO对象, 先要引用ADO类库。
8. 7.2 ADO的主要对象
ADO共有9个对象和4个对象集合。ADO的对象模型同样采用分层结构,经常被使用 的是3个处在最上层的对象,分别是Connection对象、Command对象和Recordset对象。
1. Connection 对象
Connection对象的作用是用于建立与数据源的连接,这是访问数据源的首要条件。 要创建到数据源的连接,应该先定义一个ADO的Connection对象。方法是: Dim MyCnn As ADODB. Connection
Set MyCnn = New ADODB. Connection
2. Command 对象
连接到数据源后,需要执行对数据源的请求,以获取结果集。ADO将这一类型的命令 功能封装在Command对象中。
Command对象的作用是用来定义并执行针对数据源运行的具体命令
使用Command对象,同样需要先创建一个Command对象的实例,然后通过设置Command 对象的ActiveConnection属性使打开的连接与Command对象相关联。再通过使用 CommandTcxt属性来定义命令(如SQL语句)的可执行文本。最后调用Command对象的 Execute方法执行命令并返[^记录集。
3. Recordset 对象
Recordset是最常用的ADO对象。从数据源获取的数据就存放在Recordset对象中, 并旦所有Recordset对象均由记录(行)和字段(列)组成。可以使用Recordset对象的 方法和属性定位到数据的各行,查看行中的值或者操纵记录集中的数据。
同样使用Recordset对象需要先定义并初始化一个Recordset对象。
8. 7.3使用记录集中的数据
【问题】
VBA编程与宏的主要
区别?
从数据源获取r数据后,就可以对数据进行输出、插入、删除和更新等操作了。显然, 所有这一切都应该在Recordset记录集上进行。
1. 输出记录集中的数据
2. 插入、删除和更新记录集中的数据
本章小结
本章首先介绍了 Access的内置编程语言VBA的有关知识,包括VBA的基本语法与设 计方法,然后介绍Access编程中的常用对象、数据库访问接口 ADO的使用方法,最后介 绍如何在VBA程序中用ADO访问Access数据库。
VBA (Visual Basic for Application)是 Microsoft Office 内置的编程语言;基本 语法等来源于BASIC,是根据VB简化的宏语言,其语法、词法与VB基本相同,它简单、 易学。但VBA不是一个独立的开发工具,不能独立运行,需要Word、Excel、Access 等运行环境,一般被嵌入到这样的宿主软件中。
课后练习
一、问答题
1. VBA程序设计语言有什么特点?与Visual Basic程序设计语言的区别是什么?
2. VBE环境主要由哪些窗口组成?它们的作用是什么?
3. 什么是对象?什么是对象的属性、方法和事件?
4. VBA的循环控制语句有哪几种?
5. 什么是过程?过程和函数的区别是什么?
二、选择题(见教材)
三、填空题(见教材)
实验内容及要求
一、实验目的
1. 熟悉和掌握Access程序设计的过程。
2. 理解并掌握三种程序控制结构。
3. 理解并掌握数组的使用方法。
4. 掌握过程和函数的创建及调用方法。
5. 了解并掌握用ADO接口访问数据库的一般方法。
二、实验内容
1. 创建“随机数发生器”窗体,如图8-23所示。窗体运行后,在“从”(下限) 和“到”(上限)文本框中输入数据范围,然后单击“生成”按钮,窗体中的标签显示一 个在此范围内的随机数。
请谕入随机数的范围:
从匚_2到口。。
图8-23 “随机数发生器”窗体
提示:可以使用下面的公式产生指定范围 的随机数。
int (Rnd()*(上限-下限+1)+下限)
2. 创建“宋词欣赏”窗体,如图8-24所 示。窗体运行后,选择窗体下方的单选按钮, 在窗体上方显示出对应的诗词O
3. 创建“统计"窗体,如图8-25所示。 窗体运行后,单击左侧的“生成”按钮,自动 生成50个0-100之间的随机数。单击右侧的“统计”按钮,在右侧的各个文本框中输出 统计结果。
4. 创建“雇员基本情况查询”窗体。要求如下。
(1)按图8-26所示格式和内容创建窗体。
(2)添加查询功能并验证查询结果。如果未输入要查询的雇员姓名,而单击“查询”按钮,应使用消息框给出提示,提示内容为“对不起,未输入雇员姓名,清输入!” ;如 果输入并找到了要查找的雇员,应在窗体输出结果;否则使用消息框给出未找到信息,如 图8-26所示。
提示:窗体为非绑定窗体,所有的控件为非绑定式控件。
饨计
统计窗体
图8-24“宋词欣赏”窗体
16
*
51
3
41
10
27
64
85
50
■
生成
图 8-25
90-100
4
80-89
7
70-79
5
60-69
2
<60
32
统计
“统计”窗休
如图8-27所示。要求在左侧的列表框中选
5.创建“图书销售情况统计查询”窗体,
定出版社的名称后,在右侧的文本框中显示该出版社图书的销售情况。
图8-26 “雇员基本情况台询”窗体
出毗
H华大学出质H 中国商11出氐•社
图8-27 “图书销罟情况统计企询"窗体
三、实验要求
1. 完成题目要求的设计及操作,运行并查看结果。
2. 保存上机操作结果。
3. 记录上机中出现的问题及解决方法。
4. 编写上机报告,报告内容包括如下。
(1)实验内容:实验题目与要求。
(2)分析与思考:实验过程、实验中遇到的问题及解决方法,实验的心得与体会。
8.1 VBA程序设计概述
VBA (Visual Basic for Application)是 Microsoft Office 内置的编程语言,是根 据Visual Basic简化的宏语言。
VBA则是根据Visual Basic简化的宏语言,其基本语法、词法与Visual Basic基木 相同,因而具有简单、易学的特点。与Visual Basic不同的是,VBA不是一个独立的开 发工具,一般被嵌入到像Word. Excel. Access这样的宿主软件中,与其配套使用,从而 实现在其中的程序开发功能。
8. 1. 1 VBA编程环境
在Office中使用的VBA开发界面被称为VBE (Visual Basic Editor),它具有编辑、 调试和编译VB程序的功能。
讲授
【补充】
(1) 程序:命令的有序 集合;
(2) 程序设计:编写、 调试程序的过程;
(3) 程序设计语言:机 器语言/汇编语言/高 级语言。
⑷编程的过程:
®规划
®编写代码
®程序调试
图8-1 VBE环境
1. 工具栏
在VBE环境中包括标准、编辑、调试和用户窗体工具栏。一般除了标准工具栏总是被 显示外,其他凡个工具栏可以在用到时使用菜单“视图”一“工具栏”调出。
2. 工程资源管理器窗口
工程资源管理器窗口用层次列表的形式给出了当前应用程序中的所有窗体、报表和 VBA程序模块,因而通过该窗口可了解当前VBA应用程序的构成情况。
3. 代码窗口
讲授+演示
代码窗II主要用来显示、编辑模块中的程序代码。
4. 属性窗口
属性窗口列出了所选对象控件的各种属性。在前面章节设计窗体、报表等对象时也用 到了属性窗口(属性表对话框),不过那里的属性己经被翻译成了中文。
可以在Access数据库环境中的属性窗口设置对象的各种属性值,也可以在VBE环境 的属性窗I I设置对象的各种属性值。但是在程序代码中必须使用控件属性的英文形式。例 如,下面的程序代码将当前窗体的标题改为“身份验证”。注意,这里使用了“Caption” 而不是"标题"。其中的"Me"代表当前窗体。
Me. Caption—身份验证"
5. 立即窗口
立即窗口用来在调试程序的过程中给变量临时赋值或输出变量或表达式的值。在 Access中,通常使用Debug对象的Print方法进行输出。
讲授
【思路】
针对每个概念,最好 通过具体实例进行讲 解。如,属性、方法、 事件等。
8. 1.2面向对象程序设计的概念
VBA采用了面向对象的程序设计方法。
1. 对象和集合
对象就是构造应用程序元素。对象好比积木块,它是VBA应用程序的基础构件。在开 发一个应用程序时,必须先建立各种对象,然后围绕对象进行程序设计。为了能在程序中 对具体的数据库进行操作和管理,Access提供了 •整套数据库的对象,每个对象都有各 自的属性、方法和事件。类是对一类相似对象的定义和描述。
【提示】
对象的引用:指明某 个对象的属性(或事 件、方法)的归属层 次的描述。
对象的引用的写法: 对象.属性名
【问题】
是每个控件都有焦点 事件吗?
对象集合是由一组对象组成的集合,这些对象的类型可以相同,也可以不同。例如, 在Access H4有对象集合Forms,其中包含了 Access数据库中当前打开的所有窗体。另外, 每个窗体都有一个对象集合Controls,其中包含了这个窗体中的所有控件,虽然这些控 件的类型可能各不相同。对象集合也是对象,它为跟踪对象提供了非常有效的方法。
Access中的对象大多有父子关系。在VBA代码中访问对象,要从根对象开始,逐步 取其子对象,直到要访问的对象为止。
2. 属性和方法
对象的特征用属性和方法来描述。属性用来表示对象的状态,如窗体的Name (名称) 属性Caption (标题)属性等。方法用来描述对象的行为,如窗体有Refresh方法,Debug 对象有Print方法等。
3. 事件和事件过程
事件是对象能够响应的各种动作。一个对象所能响应的事件的集合是由系统定义好 的。应用程序对事件的处理就是事件过程。
8.2 VBA编程基础
程序的本质是处理数据。在学习编程之前,应先了解VBA是怎样对数据进行划分,以 及怎样对数据进行运算的。
讲授
8. 2.1数据类型
VBA的数据类型共有13种。每种数据类型的数据在存储时所占的存储空间和处理时能够进行的运算都不相同。数据类型决定:
(1) 所占存储空间的大小;
(2) 能够进行的运算;
(3) 取值范围.
在VBA应用程序中,需要对变量的数据类型进行说明。
VBA提供了较为完备的数据类型,Access数据表中的字段使用的数据类型(OLE对象 和备注字段数据类型除外),在VBA中都有对应的数据类型。
在定义方式上,除支持符号定义方式外,还支持使用关键字定义方式。
常量
常量就是其值在程序运行期间不变的量。常量又分为字面常量、符号常量和固有常量。
1. 字面常量
字面常量是常量按照其实际数值表示。各种类型的字面常屈表示如下。
(1) 各种数字型常量。
(2) 字符型常量。
(3) 日期型常量。
(4) 布尔型常量:
2. 符号常量
可以定义用符号代替常量,如用符号PI代替3. 1415926.如果程序中多处用到某个 常量,将其定义成符号常量是一个好方法。这样的好处是一方面增加了代码的可读性,另 一方面也便于维护。
3. 固有常量
这是一类特殊的符号常量,通常已经预先在类库中定义好,编程者只要直接使用这些 已经定义好的符号常量即可。
变量
变量是其值在程序运行期间变化的量。计算机处理变化的数据的方法是将数据存储在 内存的一块临时存储空间中,所以变量实际代表的就是内存中的这块被命名的临时存储空 间。
【提示】
(1) 是内存中用于存 储数据的临时空间;
(2) 使用前最好先声 明。
讲授
【思路】
选择几种常用函数, 进行举例说明,加深 学生对函数的理解,
1. 变量的命名规则
2. 变量的声明
一般,变量在使用前应该先声明。
用Dim语句显式声明变量,格式为Dim变量名[AS类型]
函数
VBA提供了大量的内置函数,这些函数极大地丰富了 VBA的功能,方便了使用者。
函数有函数名、参数和函数值3个要素。
函数名:是函数的标识。
参数:是调用函数时被传给函数的数据,一般写在函数名后的括号中,也可以没有参
并能根据所需选择和 应用。
讲授
【思路】
通过具体实例讲解表 达式的概念及写法
讲授+演示
【问题】
输入一个数,判断该
数。调用函数时应注意所给参数的个数、顺序和类型应与函数的定义相一致。
函数值:是函数返回的值,函数的功能决定了函数的返回值。
按照函数的功能,VBA的内置.函数可分为数学函数、字符串函数、日期函数、转换函 数等。
8.2.5 表达式
要对数据进行运算就要构造表达式,表达式是将常量、变量、字段名称、控件的属性 值和函数用运算符连接而成的运算式。VBA中有5类运算符,使用这些运算符可以分别构 成算术表达式、字符表达式、关系表达式、布尔表达式和对象引用表达式。
1. 算术表达式
算术运算符共有7个,可以构成算术表达式。
2. 字符串表达式
字符运算符只有1个&,作用是连接两个字符串。
3. 关系表达式
关系运算符用来实现对数据的比较,结果为逻辑值True或Falseo
4. 布尔表达式
布尔表达式也叫逻辑表达式,用来实现对逻辑量True和False的运算。
5. 对象引用表达式
如果在表达式中用到对象,则要构造对象引用表达式,结果为被引用的对象或被引用 对象的属性值或方法。对象引用运算符有2个:“! ”和。
可以使用完整标识符引用对象、对象的属性或方法。如引用窗体“系统登录”中文本 框“txt密码”的完整引用形式为:Forms![系统登录]! [ txt密码]。
8.3 VBA程序流程控制
程序由语句组成。年个程序语句由关键字、标识符、运算符和表达式等组成。每条语 句指明了计算机要进行的具体操作。按照语句所执行的功能,VBA的程序语句有声明语句、 赋值语句、注释语句、控制语句等。
VBA程序书写原则:
• VBA不区分字母的大小写,应使用半角符号;
•在程序中可适当添加空格和缩进;
• 一行写一条语句,多条语句写在同一•行时用“:”分开;
• 一条语句分多行写时用1个空格加下划线“续行。
8. 3.1程序的顺序控制
有些程序很复杂,但任何复杂的程序经过分解后都可以看做是由三种基本结构组成 的。程序的三种基本控制结构是顺序结构、分支结构和循环结构。
顺序结构是最简单的一种结构。程序运行时,计算机按照语句的排列顺序依次执行程 序中的每一条语句。
8. 3.2程序的分支控制
类似上一章的仃宏操作,分支结构是用条件来控制语句的执行。在VBA中,执行分 支结构控制的语句有If语句和Select Case语句。
1. If・"Then・"Else 语句
语句格式为:
If〈表达式〉Then
〈语句块1>
Else
〈语句块2>
End If
执行时,先判断表达式的值,为True则执行语句块1,否则执行语句块2。〈表达式》 可■以是任何表达式,一般为关系表达式或布尔表达式。如果是其他表达式,则非0认为是 True, 0 认为是 False。
2. If***Then***ElseIf 语句
如果需要用多个条件对程序进行控制,可以使用If-Then-Elself语句。其语句格 式为:
If〈表达式1> Then
〈语句块1>
Elself〈表达式 2>Then
〈语句块2>
[Elself〈表达式 n>Then
〈语句块n>
Else
〈语句块n+l> ]
End If
运行时,从表达式1开始逐个测试条件,当找到第一个为True的条件时,即执行该 条件后所对应的语句块。
3. Select Case
VBA中的另一个多分支语句是Select Case语句。其语句格式为:
Select Case〈变量或表达式〉
Case〈表达式列表1>
语句块1
Case〈表达式列表2>
语句块2
• ♦ •
[Case Else
语句块n+1]
End Select
数是奇数还是偶数.
讲授+演示
【思路】
在讲解节时, 可以通过演示教材中 的实例,使学生了解 如何实现程序的分支 控制。
4.分支嵌套
使用各种分支语句时可以在其中的语句块中嵌套另一个分支语句,这就是分支嵌套。 而且各种分支语句之间也可以嵌套,例如,在If-Thon-Else语句中嵌套Select Case 语句等。
8. 3.3程序的循环控制
循环控制结构也叫重复控制结构。特点是程序执行时,该语句中的一部分操作即循环 体被重复执行多次。在VBA中,执行循环控制的语句有For循环语句和I)o-l.oop循环语 句。
1. For循环语句
语句格式为:
For〈循环变量> =〈初值〉to〈终值〉[Step 〈步长>]
〈语句块〉
[Exit For]
〈语句块〉
Next〈循环变量〉
2. 【)()••• Loop循环语句
该语句适合的范围更广。有以下两种形式。
形式1:
Do { WhilelUntil }<条件〉
语句块
[Exit Do]
语句块
Loop
3. 循环嵌套
与分支结构相似,各种循环控制语句也可以嵌套,并旦分支结构和循环结构彼此之间 也可以进行嵌套。通过各种语句之间的这种嵌套,就可以实现更复杂的程序控制。
儿种循环语句的比较。
8.4 VBA数组
如果在程序中要对-•组数据进行处理,通常的解决方法是将这组数放在数组中。
数组并不是一种数据类型而是一组相同类型的变量集合。在程序vzhong使用数组的 最大好处是用一个数据名代表逻辑上相关的一组数据,用下标来区别该数据组中的各个元 素。
8. 4.1数组的概念及定义
数组是一组相同类型的数据的集合。它属于构造数据类型,可以由变量这样的基本类 型构造而成。
1. 一维数组的定义
【问题】
求解:1+2+3+-+10?
讲授+演示
【思路】
在讲解8. 3.3节时, 通过分析、讲解和演 示教材中的实例,让 学生了解如何实现程 序的循环控制。
【问题】
要处理10个人的考试 成绩,怎么组织这些 数据?
讲授
讲授+演示
【思路】
在讲解8. 4.2节时, 通过分析讲解教材中 的实例,让学生理解 数组的概念和使用方 法。
讲授+演示
【思路】
在讲解8.5节时,通 过分析讲解教材中的 实例,让学生掌握VBA 模块的创建中的概念 及创建方法。
注意:讲清相关的概
使用数组必须先定义数组,一维数组的定义格式为:
Dim数组名([<下界〉to]〈上界» [As〈数据类型>]
2.二维数组的定义
二维数组其定义格式为:
Dim数组名(K下界〉to]〈上界〉,K下界〉to]〈上界» [As 〈数据类型〉]
8. 4.2数组的应用
一旦定义了数组,就可以用前面介绍的对变量的处理方法处理数组,并且可以用循环 语句对数组进行处理,从而简化程序的书写,提高程序的可读性。
数组可以看做是程序中对成组数据的组织方法,使用数组可■以提高数据的处理效率。 本节主要介绍了一维和二维定长数组的定义和使用方法,关于动态数组和多维数组等其他 内容,可参考有关书籍。
8.5 VBA模块的创建
VBA程序是由模块组成的。使用工程资源管理器窗口就可以直观地看到当前所打开 的Access程序的构成。组成VBA程序的模块有类模块和标准模块,类模块通常和某个 具体的对象相连,前面章节所建立的窗体和报表都属于类模块。
8. 5.1 VBA标准模块
模块是存储代码的容器。标准模块一般用来承载在程序其他模块中要引用的代码,这 些代码按照其是否有返回值可以被组织成Sub过程和Function函数。因而标准模块不与 某个具体的对象相连,它的作用就是为其他模块提供可共享的公共Sub过程和Function 函数。
过程的创建和调用
过程一般是一段可以实现某个具体功能的代码。与函数不同,过程没有返回值。既可 以在类模块中创建过程,也可以在标准模块中创建过程。
8. 5.3函数的创建和调用
与过程不同,函数有返回值。VBA的函数包含内置函数和用户自定义函数两种。关于 内置函数前面己有介绍,这里主要介绍如何在模块内创建自定义函数。创建函数与创建过 程的方法相似,不同的是在图8-10所示的“添加过程”对话框中应将类型选择为“函数”。 考虑到函数有返回值,因此在定义函数时应特别注意要指明函数的返回值的类型,并且在 函数体内给函数赋值.
函数的定义形式如下:
[Publicl Private] [Static] Function 过程名(变量名 1 As 类型,变量名 2 As 类 型,…)As类型〈局部变量或常数定义〉
V语句块〉〈函数名>*表达式〉
[Exit Function]〈语句块〉
〈函数名〉*表达式〉
End Function
8. 5.4过程调用中的参数传递
在调用过程和函数的过程中,通常会发生数据的传递,即将主调过程中的实参传给被 调过程的形参。在参数传递过程中,可以有传址和传值两种形式。
1. 传址
如果在定义过程或函数时,形参的变量名前加ByRef或不加任何前缀,即为传址。 传址的参数传递过程是:调用过程时,将实参的地址传给形参。因此如果在被调过程 或函数中修改了形参的值,则主调过程或函数中实参的值也跟着变化。
2. 传值
如果在定义过程或函数时,形参的变量名前加By Vai前缀,即为传值。
8. 5.5局部变量、全局变量和静态变量
前面讲到的变量都是在过程和函数内定义的局部变量。除了过程内的局部变量, 在VBA程序中还可以定义模块级局部变量和全局变量。顾名思义,这些不同的变量决 定了变量的有效范围,即作用域。
定义这些变量的方法,主要区别在于定义的地点和所使用的关键字。
1. 过程内局部变量
在过程和函数内用关键字Dim定义,有效范围是定义该变量的过程或函数。前面示例 中的变量都是过程内局部变量,另外,形参也属于过程内局部变量。
2. 模块级局部变量
在模块的通用声明段用关键字Dim或Private定义,有效范围是定义该变量的模块。
3. 全局变量
全局变量是可在整个应用程序使用的变量。定义的方法是在模块的通用声明段用 Public关键字定义变量。
引用全局变量时,如果是在标准模块中定义的全局变量,可在应用程序的任何地方直 接用变量名引用该变量。如果是在类模块(如窗体模块)中定义的全局变量,可在应用程 序的任何地方引用该变量,但在变量名的前面应加模块名限定,形式为“模块名.变量名气
4. 静态变量
局部变昂:和全局变晟决定了变量的有效范围,静态变量则决定了变量的生存期。对于 过程内的局部变量,它的生存期从进入过程(Sub)开始,到退出过程(End Suh)时结束。 如果要改变过程内局部变量的生存期,可以将它定义为静态变量。
8.6 VBA程序的调试
简单讲解
编程就是规划、书写程序代码并上机调试的过程。很难做到书写后的程序能一次通过。 因此在编程过程中往往需要不断重复检查和纠正错误,试运行这个过程,这就是程序调试。 在进一步学习程序调试方法之前,首先需要了解VBA开发环境的中断模式。
展开阅读全文