VBA模块的编程过程_第1页
VBA模块的编程过程_第2页
VBA模块的编程过程_第3页
VBA模块的编程过程_第4页
VBA模块的编程过程_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第12章VBA编程

虽然Access的交互操作功能非常强大且易于掌握,但是在实际的数据库应用系统中,用户还是希望尽量通过自动操作达到数据库管理的目的。应用程序设计语言在开发中的应用,可以加强对数据管理应用功能的扩展。Office中包含VisualBasicforApplication(VBA),VBA具有与VisualBasic相同的语言功能,它为Access提供了无模式用户窗体以及支持附加ActiveX控件等功能。本章将简要介绍VBA的编程。

教学重点与难点VBA的编程环境常量、变量和数组程序流程控制创建VBA模块12.1VBA编程环境Access利用VisualBasic编辑器(VBE)来编写过程代码,它以微软的VisualBasic编程环境的布局为基础,实际上是一个集编辑、调试、编译等功能于一体的编程环境。所有的Office应用程序都支持VisualBasic编程环境,而且其编程接口都是相同的。使用该编辑器可以创建过程,也可以编辑已有的过程。

帮助输入

显示提示信息

形成良好的程序设计风格

使用书签调试手段下图为一个VBE窗口,窗口中的各个部分已经给出了相应标识。

12.2VBA程序设计基础VBA(VisualBasicforApplication)是VisualBasic语言的一个子集,集成了整个Office产品套件中的开发语言和开发环境。作为Office产品系列的一个重要组成部分,MicrosoftAccess也是使用VBA语言作为其代码设计的开发语言。本节将简要介绍VBA语言的基本结构和语法。

常量、变量和数组

数据类型在VBA中,程序是由过程组成的,过程又由根据VBA规则书写的指令组成。一个程序包括常量、变量、运算符、语句、函数、数据库对象和事件等基本要素。

常量变量数组

12.2.1常量、变量和数组

VBA语言的数据类型包括布尔型(Boolean)、日期型(Date)、字符串(String)、货币型(Currency)、字节型(Byte)、整数型(Integer)、长整型(Long)、单精度型(Single)、双精度型(Double)以及变体型(Variant)和用户自定义型。

12.2.2数据类型12.3程序流程控制与传统的程序设计语言一样,VisualBasic也具有结构化程序设计的3种结构:顺序结构、选择(分支)结构和循环结构,下面重点介绍选择结构和循环结构。

选择结构

循环结构

选择结构有If语句和SelectCase语句两种。

If语句是一类比较简单的条件控制语句,可以通过紧跟在If后面的表达式的值,判断出在其影响范围下的语句是否被执行。

如果在If语句中,一个表达式有多个可选值,并且需要为这些可选值建立不同的执行语句,例如选项组控件可以通过不同的值来判断选项组中到底是按下哪个按钮,这样的语句设计通过If语句不方便实现,这时就需要使用SelectCase语句。

12.3.1选择结构编程中经常要需要重复执行某些操作,这时就需要通过循环语句来判断并执行这些循环操作。VBA提供了多种循环控制语句,其中常用的包括Do…Loop语句、For…Next语句以及While…Wend语句等。

Do…Loop语句

For…Next语句

While…Wend语句GoTo语句12.3.2循环结构12.4Access对对象模模型Access提提供的的对象象模型型可以以将数数据库库功能能与自自定义义的解解决方方案集集成起起来。。通过过使用用Access对象象模型型,可可以实实现对对事件件编程程、创创建Access窗窗体和和报表表以及及设置置引用用等。。对象象模型型提供供了一一些对对象,,Access内部部应用用程序序可以以使用用这些些对象象。对象对象集集合对象模模型VBA与传传统语语言的的重要要区别别之一一就是是它是是面向向对象象的。。对象象是VisualBasic程程序设设计的的核心心。事事实上上,窗窗体和和控件件都是是对象象,数数据库库也是是对象象,对对象到到处都都存在在。一一旦理理解如如何引引用应应用程程序对对象模模型中中的对对象,,就能能够使使用对对象及及其特特性来来建立立自己己的解解决方方案。。当然然,也也可以以将对对象理理解为为封装装数据据和代代码的的客体体,它它是代代码和和数据据的集集合。。属性方法事件12.4.1对对象对象集集合是是一个个包含含几个个其他他对象象的对对象,,而这这些对对象可可具有有不同同的类类型,,并且且对象象的位位置均均可改改变。。Access窗体体具有有以下下3种种集合合,如如下图图所示示,其其中填填充色色为灰灰色的的表示示集合合。12.4.2对对象集集合对象模模型实实际上上给出出了基基于对对象程程序的的结构构,通通过定定义程程序中中所使使用对对象之之间的的关系系,对对象模模型能能够以以一种种比编编程更更容易易的方方式来来组织织对象象。Access中中的窗窗体模模型包包括的的对象象类型型有::控件件、集集合和和集合合中的的对象象。窗体对对象模模型的的每个个元素素都具具有一一系列列的属属性、、方法法和事事件,,可以以利用用方法法使应应用程程序按按照要要求进进行工工作。。在VBA中,,各个个对象象之间间也不不是孤孤立的的,而而是彼彼此之之间存存在着着包含含与被被包含含的关关系。。12.4.3对对象模模型12.5创创建VBA模块块模块是是将VBA代码码的声声明、、语句句和过过程作作为一一个单单元进进行保保存的的集合合,是是基本本语言言的一一种数数据库库对象象,数数据库库中的的所有有对象象都可可以在在模块块中进进行引引用。。利用用模块块可以以创建建自定定义函函数、、子程程序以以及事事件过过程等等,以以便完完成复复杂的的计算算功能能。模模块可可以代代替宏宏,并并可以以执行行标准准宏所所不能能执行行的功功能。。模块的的定义义和创创建过程的的创建建过程的的调用用Access模模块有有两种种基本本类型型:类类模块块和标标准模模块。。模块块中的的每一一个过过程都都可以以是一一个Function过过程或或一个个Sub过过程。。类模块块标准模模块12.5.1模模块的的定义义和创创建过程是是包含含VBA代代码的的基本本单位位,可可以完完成一一系列列指定定的操操作。。过程程由计计算的的语句句和方方法组组成,,通常常分为为Sub过过程、、Function过程程和Property过过程。。其中中,Sub过程程是最最常用用的过过程类类型,,也称称为命命令宏宏,可可以传传送参参数和和使用用参数数来调调用它它,但但不返返回任任何值值;Function过过程也也称为为自定定义函函数过过程,,其运运行方方式和和使用用程序序的内内置函函数一一样,,即通通过调调用Function过过程获获得函函数的的返回回值;;Property过程程能够够处理理对象象的属属性。。12.5.2过过程的的创建建Call语语句用用来调调用过过程,,也可可调用用VisualBasic的函函数和和自定定义函函数,,两者者均采采用如如下的的格式式:[Call]name[argumentlist]其中name表表示被被调用用过程程的名名称,,argumentlist表示示参数数列表表,各各参数数间必必须以以逗号号隔开开。在窗体体过程程(例例如事事件过过程)中可可以直直接调调用标标准模模块中中的过过程,,但也也可通通过标标准模模块的的名称称来调调用。。在标标准模模块的的过程程中调调用窗窗体模模块中中的过过程时时,必必须以以VisualBasic格式式指出出窗体体名,,例如如“Form_员工工信息息.name””。12.5.3过过程的的调用用12.6VBA代码码的保保护在开发发数据据库产产品以以后,,为了了防止止其他他人查查看或或更改改VBA代代码,,需要要对该该数据据库的的VBA代代码进进行保保护。。保护护VBA代代码的的措施施主要要有两两种::对VBA代码码设置置密码码保护护或生生成MDE文件件保护护。设置密密码保保护VisualBasic代代码生成ACCDE文件件用户可可以通通过对对VBA代代码设设置密密码来来防止止其他他非法法用户户查看看或编编

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论