- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11章创建VBA模块整理
本章要点 * 第十一章 创建VBA模块 1、变量与过程的作用域 2、模块程序的结构设计与常用命令的使用 3、用VBA设计事件过程 4、网络数据库编程方法 11.1 模块创建 编程环境的模块代码设计窗口由两部分区域组成: 声明区域 过程实现区域。 ●声明区域位于模块的开始部分,主要用于声明比较规则,变量、常量或数组等的定义等。 ●过程实现区域用于设计每个具体的子过程或函数过程,在子过程或函数过程内部编写VBA代码,用以执行操作或计算数值。 11.1.1 过程与变量的作用域 变量或过程可被访问的范围称为变量或过程的作用域。 1. 过程的作用域 过程的作用域分为:模块(窗体模块或标准模块)级和全局级。 ● 模块(窗体模块或标准模块)级: 过程定义在某个窗体模块或标准模块内部,子过程或函数过程前加Private关键字,这类过程只能被本窗体模块或标准模块内部的其他过程调用。 ● 全局级: 过程定义在某个标准模块内部,子过程或函数过程前加Public关键字,这类过程可以被应用程序的所有窗体模块或标准模块中的过程调用。 调用方式: 在标准模块中定义的全局过程,外部过程均可调用,如果过程名在整个应用程序中不惟一,需在被调过程名前加该过程所在的标准模块名。 例:Call 标准模块名.被调过程名(实参表) 2. 变量的作用域 变量定义的位置与方式不同,变量的作用范围也有所不同,变量的作用范围分为:局部范围、模块范围和全局范围。 根据变量的作用范围,可把变量分为3种类型:局部变量、模块变量和全局变量。 (1) 模块声明区域 此区域在每一模块的最上方,第一个过程之上,行数可多可少。在模块声明区域可以声明比较规则、声明变量等。 Option Compare Database语句用于声明比较规则, 关于Option的使用语法有: ●Option Compare:定义模块字符串比较规则 ● Option Base:设置该模块所有数组的起始值,其后只可使用0和1两个数字。 ● Option Explicit:该语句用于关闭系统自动声明变量的功能。 (2) 局部变量 变量定义在模块的子过程或函数过程内部,使用Dim … As语句定义或不加定义直接使用的变量。其作用范围仅在本子过程中,别的过程不能访问,一旦该子过程运行结束,局部变量的内容自动消失。 (3) 模块变量 变量定义在模块的所有子过程或函数过程的外部,在模块的声明区域(开始位置),使用Dim … As语句定义或用Private … As语句声明的变量。其作用范围为本模块的所有子过程或函数过程。别的模块过程不能访问,一旦模块运行结束,模块变量的内容自动消失。 (4) 全局变量 变量定义在标准模块的所有子过程或函数过程的外部,在标准模块的声明区域(开始位置)使用Public … As语句声明的变量。其作用范围为应用程序所有模块的子过程或函数过程。全局变量的值在整个应用程序的运行中始终存在,只有整个应用程序运行结束,全局变量的值才会消失。 11.1.2 创建事件过程 当为窗体、报表或控件建立事件过程时,Access 2003将自动创建事件过程的模板,编程人员只需要向窗体、报表或控件的事件过程模板中添加需要执行的程序代码即可。 1. 创建操作记录的命令按钮 【例11.1】 建立“学生信息处理”窗体,运行结果如图 : 2. 创建系统登录窗体“确定”按钮的事件过程 设计一个应用系统,登录窗体是不可缺少的。在登录窗体中,主要验证用户输入的密码和用户名是否合法,正确则运行应用系统,否则,拒绝进入。 【例11.2】 设计一个用户登录窗体。 3. 在VBA编程中验证数据 设计与数据表关联的窗体,在操作窗体中,每当保存记录数据时,所做的更改便会保存到数据表中。对一些关键字段,例如学号,可在数据被更新前,验证并提示数据的合 法性。 在控件的数据被更新之前会发生BeforeUpdate事件。输入或改变了控件的值后,一但该控件失去焦点,就激发BeforeUpdate事件。通过创建控件的BeforeUpdate事件过程,可以实现对输入数据的各种验证,例如数据类型、数据范围验证等。 【例11.3】 对在“学生信息处理”窗体的学号文本框控件(txtxh)中输入或更改数据进行验证。要求学号文本框只接受数值数据且位数为8位,当更改或输入不合法数据时提示用户。 4. 在VBA编程中设计计时器 在VBA中没有提供直接的时钟控件(例如VB中的Timer),但在窗体中提供了“计时器间隔”(TimerInterval)属性和“计时器触发”(Timer)事件。 Timer事件以属性TimerInterval
文档评论(0)