模块与VBA编程基础(2)

2019-07-30 13:16

代码编辑区上部的通用声明段,主要书写模块级以上的变量声明、对选项的设置等,控制结构等语句要写在过程块结构中,过程块的先后次序与程序执行的先后次序无关。

在代码窗口内输人代码时,系统会自动显示关键字列表、关键字属性列表及过程参数列表等对象方法提示信息,方便初学用户的使用。

例8.1 新建窗体并在其上放置一个命令按钮,然后创建该命令按钮的“单击”事件响应过程。操作步骤如下: (1)进人Access的窗体“设计”视图,在新建窗体上添加一个命令按钮并命名为“cmdTest”,如图8.5所示。

(2)选择“ Test”命令按钮,单击右键打开属性窗体,单击“事件”卡片并设置“单击”属性为“(事件过程)”选项以便运行代码,如图8.6所示。

(3)单击属性栏右边的“…”按钮,即进入新建窗体的类模块代码编辑区,如图8.7所示。在打开的代码编辑区里,可以看见系统已经为该命令按钮的“单击”事件自动创建了事件过程的模板。

此时,只需在模板中添加VBA程序代码,这个事件过程即作为命令按钮的“单击”事件响应代码。这里,仅给出了一条语句:

MsgBox"测试完毕!",vbinformation, "title" 如图8.8所示。

4)按Alt + F11组合键回到窗体“设计”视图,运行窗体,单击“test”命令按钮即激活命令按钮“单击”事件,

系统会调用设计好的事件过程来响应“单击”事件的发生,弹出“测试完毕!”消息框。响应代码运行效果如图8.9所示。

需要说明的是,上述事件过程的创建方法适合于所有Access窗体、报表和控件的事件代码处理。其间,Access会自动为每一个事件声明事件过程模板,并使用Private关键字指明该事件过程只能被同一模块中的其他过程所访问。 四、程序语句书写原则 1.语句书写规定

通常将一个语句写在一行。语句较长,一行写不下时,可以用续写符(_)将语句连续写在下一行。 可以使用冒号(:)将几个语句分隔写在一行中。

当输入一行语句并按下回车键后,如果该行代码以红色文本显示(有时伴有错误信息出现),则表明该行语句存在错误应更正。 2.注释语句

一个好的程序一般都有注释语句。这对程序的维护有很大的好处。 在VBA程序中,注释可以通过以下两种方式实现: 使用Rem语句,格式为:Rem注释语句 用单引号“’”,格式为:’注释语句 例8.2 定义变量并赋值。 Rem定义两个变量 Dim Strl,Str2

Strl =“Beijing”:Rem注释在语句之后要用冒号隔开 Str2 =“Shanghai” ’这也是一条注释。这时,无需使用冒号。

注释可以添加到程序模块的任何位置,并且默认以绿色文本显示。还可以利用“编辑”工具栏中的“设置注释块”按钮和“解除注释块“按钮”,对大块代码进行注释或解除注释。

3.采用缩写格式书写程序

采取正确的锁鞋进行格式以显示出流程中的结构。也可以利用“编辑”菜单下的“缩进”或“凸出”命令进行设置。

4.F1帮助信息

可以将键盘光标停留在某个语句命令上按下F1键,系统会立刻提供相关的帮助信息。 8.3.3 数据类型和数据库对象

Access数据库系统创建表对象时所涉及的字段数据类型(除了OLE对象和备注数据类型外),在VBA中都有数据类型相对应。 一、标准数据类型

传统的BASIC语言使用类型说明标点符号来定义数据类型,VBA则除此之外,还可以使用类型说明字符来定义数据类型,参见表8.2所示的VBA类型标识、符号、字段类型及取值范围。在使用VB代码中的字节、整数、长整数、自动编号、单粉度和双梢度数等的常量和变最与Access的其他对象进行数据交换时.必须符合数据表、查询、窗体和报表中相应的字段属性。

1.布尔型数据(Boolean)

布尔型数据只有两个值:True和False。布尔型数据转换为其他类型数据时,True 转

换为-1,False转换为0;其他类型数据转换为布尔型数据时,0转换为False,其他值转换为Ture。 2.日期型数据(Date)

任何可以识别的文本日期数据都可以赋给日前变量。“时间/日期”类型数据必须前后用 “#”号封住,例如#2003/11/12#。 3.变体类型数据(Variant))

变体类型是一种特殊的数据类型,除了定长字符串类型及用户自定义类型外,可以包含其他任何类型的数据。变体类型还可以包含其他Empty、Error、 Nothing和Null特殊值。使用时,可以用VarType与TypeName两个函数来检查Variant中的数据。

VBA中规定,如果没有显式声明或使用符号来定义变量的数据类型,则默认为变体类型。

Variant数据类型十分灵活,但使用这种数据类型最大的缺点在于缺乏可读性,即无法通过查看代码来明确其数据类型。

二、用户定义的数据类型

应用过程中可以建立包含一个或多VBA标准数据类型的数据类型,这就是用户定义数据类型。它不仅包含VBA的标准数据类型,还可以包含前面已经说明的其他用户定义数据类型。 用户定义数据类型可以在Type... End Type关键字间定义,定义格式如下: Type[数据类型名] <域名>As<数据类型> <域名>As<数据类型> End Type

例8.3 定义一个学生信息数据类型。 Type NewStudent

txtNo As String * 7 ’学号,7位定长字符串 txtName As String ’姓名,变长字符串 txtSex As String*1 ’性别,1位定长字符申 txtAge As Integer ’年龄,整型 End Type

上述例子定义T由txtNo(学号)、txtName(姓名)、txtSex(性别)和txtAge(年龄)4个分量组成的名为NewStudent的类型。

当需要建立一个变量来保存包含不同数据类型字段的数据表的一条或多条记录时,用户定义数据类型就特别有用。

一般用户定义数据类型使用时,首先要在模块区域中定义用户数据类型,然后显示以Dim,Public或Static关键字来定义此用户类型变量。

用户定义类型变量的取值.可以指明变量名及分量名,两者之间用句号分隔,例如,定义一个学生信息类型变量NewStud井操作分址的例子如下: Dim NewStud as NewStudent NewStud.txtSno =“980306” NewStud.txtName =“冯伟” NewStud.txtSex =“女” NewStud.txtAge = 20

可以用关键字With简化程序中重复的部分。例如,为上面NewStud变量赋值可以用: With NewStud

.txtSno = “980306” .txtName = “冯伟” .txtSex = “女” .txtAge = 20 End Age

8.3.4 变量与常量

变量是指程序运行时值会发生变化的数据。变量名的命名,同字段命名一样,变量命名不能包含有空格或除了下划线字符(_)外的任何其他的标点符号,其长度不得超过255个字符。 此外,变量命名不能使用VBA的关键字。VBA中的变量命名通常采用大写与小写字母相结合的方式,以使其更具可读性。需要指出的是,在VBA里变量命名大小写不“敏感”,即“NewVar”和“newvar”代表的是同一个变量。

常量是在程序中可以直接引用的实际值,其值在程序运行中不变。不同的数据类型,常量的表现形式也不同,在VBA中有3种常量:直接常量、符号常量和系统常量。

一、变量的声明

变量声明就是定义变量名称及类型,使系统为变量分配存储空间。VBA声明变量有两种方法。 1.显式声明

变量先定义后使用是较好的程序设计习惯,如C、C ++和Java语言等,都要求在使用变量前先定义该变量。


模块与VBA编程基础(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:16秋福建师范大学《学前儿童体育教育》在线作业一

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: