教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

模块与VBA编程基础

来源:网络收集 时间:2026-08-15
导读: 第8章 模块与VBA编程基础 在Access系统中,借助前面章节介绍的宏对象可以完成事件的响应处理,例如打开和关闭窗体、报表等。但宏的使用也有一定的局限性。一是宏只能处理一些简单的操作,对于复杂条件和循环等结构则无能为力,二是宏对数据库对象的处理,例

第8章 模块与VBA编程基础

在Access系统中,借助前面章节介绍的宏对象可以完成事件的响应处理,例如打开和关闭窗体、报表等。但宏的使用也有一定的局限性。一是宏只能处理一些简单的操作,对于复杂条件和循环等结构则无能为力,二是宏对数据库对象的处理,例如,表对象或查询对象的处理能力很弱。

“模块”是将VBA声明和过程作为一个单元进行保存的集合体。通过模块的组织和VBA代码设计,可以大大提高Access数据库应用的处理处理能力,解决复杂问题。

本章主要介绍Access数据库的模块类型及创建、VBA程序设计的基础。 8.1 模块的基本概念

模块是Access系统中的一个重要对象,它以VBA(Visual Basic for Aapplication)以函数过程(Function)或子过程(Sub)为单元的集合方式存储。Access中,模块分为类模块和标准模块两种类型。 8.1.1 类模块

窗体模块和报表模块都属于类模块,它们从属于各自的窗体或报表。在窗体或报表的设计视图环境下可以用两种方法进入相应的模块代码设计区域;一是鼠标点击工具栏“代码”按钮进入;二是为窗体或报表创建事件过程时,系统会自动进入相应代码设计区域。

窗体模块和报表模块通常都含有事件过程,而过程的运行用于响应窗体或报表上的事件。使用事件过程可以控制窗体或报表的行为以及它们对用户操作的响应。

窗体模块和报表模块中的过程可以调用标准模块中已经定义好的过程。

窗体模块和报表迷狂具有局限性,其作用范围局限在所属窗体或报表内部,而生命周期则是伴随着窗体或报表的打开而开始、关闭而结束。 8.1.2 标准模块

标准模块一般用于存放供其他Access数据库对象使用的公共过程。在系统中可以通过创建新的模块对象而进入其代码设计环境。

标准模块通常安排一些公共变量或过程供类模块里的过程调用。在各个标准模块内部也可以定义私有变量和私有过程仅供本模块内部使用。

标准模块中的公共变址和公共过程具有全局特性,其作用范围在整个应用程序里,生命周期是伴随着应用程序的运行而开始、关闭而结束。 8.1.3 将宏转换为模块

在Access系统中,根据需要可以将设计好的宏对象转换为模块代码形式。 8.2 在Access中创建模块 8.2 创建模块

过程是模块的单元组成,由VBA代码编写而成。过程分两种类型:Sub子过程和Function函数过程。 一、在模块中加入过程

模块是装着VBA代码的容器。在窗体或报表的设计视图里,单击工具栏“代码”按钮或者创建窗体或报表的事件过程可以进人类模块的设计和编辑窗口;单击数据库窗体中的“模块”对象标签,然后单击“新建”按钮即可进人标准模块的设计和编辑窗口。

一个模块包含一个声明区域,且可以包含一个或多个子过程(以Sub开头)或函数过程(以Function开头)。模块的声明区域是用来声明模块使用的变量等项目。 1.Sub过程

又称为子过程。执行一系列操作,无返回值。定义格式如下: Sub过程名 [程序代码] End Sub

可以引用过程名来调用该子过程。此外,VBA提供了一个关键字Call,可显示调用的一个子过程。在过程名前加上Call是一个很好的程序设计习惯。 2.Function过程

又称为函数过程。执行一系列操作,有返回值。定义格式如下:

Function过程名As(返回值)类型 [程序代码] End Function

函数过程不能使用Call来调用执行,需要直接引用函数过程名,并由接在函数过程名后的括号所辨别。 二、在模块中执行宏

在模块的过程定义中,使用Docmd对象的RunMacro方法,可以执行设计好的宏。其调用格式为: Docmd.RunMacro MacroName[,RepeatCount ][,RepeatExpression]

其中,MacroName表示当前数据库中宏的有效名称;RepeatCount可选项,用于计算宏运行次数的整数值;RepeatExpression可选项,数值表达式,在每一次运行宏时进行计算,结果为False时,停止运行宏。 8.3 VBA程序设计基础

VBA是徽软Office套件的内置编程语言,其语法与Visual Basic编程语言互相兼容。在Access程序设计中,当某些操作不能用其他Access对象实现,或者实现起来很困难时,就可以利用VBA语言编写代码,完成这些复杂任务。

下面介绍VBA编程语言的一些概念和方法。

8.3.1 面向对象程序设计的基本概念

Access内部提供了功能强大的向导机制,能处理基本的数据库操作。在此基础上再编写适当的程序代码,可以极大地改善程序功能。

Access内嵌的VBA,功能强大,采用目前主流的而向对象机制和可视化编程环境。 1.对象和集合

Access采用面向对象程序开发环境,其数据库窗口可以方便地访问和处理表、查询、窗体、表、页、宏和模块对象。VBA中可以使用这些对象以及范围更广泛的一些可编程对象,例如“记录集”等。

一个对象就是一个实体,如一辆自行车或一个人等。每种对象都具有一些属性以相互区分,如自行车的尺寸、颜色等。即属性可以定义对象的一个实例。例如一辆28#的自行车和一辆26#自行车就分别定义了自行车对象的两个不同的实例。

对象的属性按其类别会有所不同,而且同一对象的不同实例属性构成也可能有差异。比如自行车对象的属性与人这个对象的属性显然不同、同属自行事对象的普通自行车和专业自行车的属性构成也不尽相同。

对象除了属性以外还有方法。对象的方法就是对象的可以执行的行为,自行车行走、人说话等。一般情况下,对象都具有多个方法。

Access应用程序由表、查询、窗体、报表、页、宏和模块对象列表构成,形成不同的类。Access数据库窗体左侧显示的就是数据库的对象类,单击其中的任一对象类,就可以打开相应对象窗口。而且,其中有些对象内部,例如窗体、报表等,还可以包含其他对象-Access中,控件外观和行为可以设置定义。 集合表示的是某类对象所包含的实例构成。 2.属性和方法

属性和方法描述了对象的性质和行为。其引用方式为:对象.属性或对象.行为。

Access中“对象”可以是单一对象,也可以是对象的集合。例如,Labell.Caption属性表示“标签”控件对象的标题属性,Reports.Item(0)表示报表集合中的第一个报表对象。数据库对象的属性均可以在各自的“设计”视图中,通过“属性窗体”进行浏览和设置。

Access应用程序的各个对象都有一些方法可供调用。了解并掌握这些方法的使用可以极大地增强程序劝能,从而写出优秀的Access程序来。

Access中除数据库的7个对象外,还提供一个重要的对象:DoCmd对象。它的主要功能是通过调用包含在内部的方法实现VBA编程中对Access的操作。例如,利用DaCmd对象的 Open Report方法可打开报表“教师信息”,语句格式为: DoCmd.OpenReport“教师信息”

DoCmd对象的方法大都需要参数。有些是必给的。有些是可选的,被忽略的参数取缺省值。例如,上述OpenReport方法有4个参数.见下面调用格式:

DoCmd. OpenReport reportname[,view][,filtername][,wherecondition ] 其中只有reportname(报表名称)参数是必需的。

DoCmd对象还有许多方法,可以通过帮助文件查询使用。 3.事件和事件过程

事件是Access窗休或报表及其上的控件等对象可以“辨识”的动作 …… 此处隐藏:3637字,全部文档内容请下载后查看。喜欢就下载吧 ……

模块与VBA编程基础.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/404014.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)