模块的设计与使用.ppt
《模块的设计与使用.ppt》由会员分享,可在线阅读,更多相关《模块的设计与使用.ppt(192页珍藏版)》请在三一办公上搜索。
1、ACCESS数据库技术与应用,第9章 模块的设计与使用,模块的基本概念 VBA程序设计基础 VBA函数的使用 模块的建立与使用 过程与参数传递,本章要点:,9.1 模块概述,模块是一个或多个过程组成的集合,用模块的名字存储在一起,其中的每个过程都能实现特定操作。模块是由声明、语句和过程组成的集合,以VBA(Visual Basic for Application)语言编写,作为一个已命名的单元存储在一起。,(1)模块:模块由一个或多个过程组成,每个过程实现一个或几个功能。模块的执行通过特定事件激发相应的事件过程实现。(2)模块有2种类型:类模块和标准模块。使用模块可以在实际开发中实现较为复杂的
2、功能。类模块:类模块是包含代码和数据的集合,可以看作是没有物理表示的控件,总是与某一特定的窗体或报表相关联。窗体模块和报表模块都属于类模块。标准模块:标准模块是代码的集合,包含的过程不与任何其他对象相关联,是数据库对象使用的公共过程,保存在数据库窗口中。,9.1.1 模块的基本概念,(3)事件过程:事件过程是专为特定事件编写的一组代码,被窗体或报表的特定事件调用,实现特定的操作,并对用户的操作做出响应。事件过程只能在类模块中定义。(4)通用过程:通用过程是与特定事件无关的一组代码,能被多个同类型或不同类型的事件调用。在类模块和标准模块中都可以定义通用过程。,9.1.1 模块的基本概念,类模块的
3、建立。例9.1:窗体中建立标签,单击标签显示问候信息。(1)新建名为win9-1的窗体。(2)窗体中建立标签标签“标题”为:问候标签“名称”为:hello背景色:淡黄色边框颜色:黑色。(3)右击标签控件快捷菜单中选:事件生成器在【选择生成器】对话框中选:代码生成器【确定】。,9.1.1 模块的基本概念,(4)在事件过程中输入代码:MsgBox“你好!”。,9.1.1 模块的基本概念,(5)转到窗体视图,单击标签显示问候信息。,标准模块的建立例9.2:建立标准模块,在标准模块中建立一个通用过程,运行过程显示问候信息。(1)单击“模块”对象单击“新建”按钮。(2)输入:sub hello()回车,
4、回车后系统自动建立过程的起始行sub hello()与过程的结束行end sub。,9.1.1 模块的基本概念,例9.2:建立标准模块,在标准模块中建立一个通用过程,运行过程显示问候信息。(1)单击“模块”对象单击【新建】按钮。(2)输入:sub hello()回车,回车后系统自动建立过程的起始行sub hello()与过程的结束行end sub。(3)在sub hello()与end sub之间输入:MsgBox 你好!。,9.1.1 模块的基本概念,(4)单击【保存】按钮为模块起名:模块1单击【确定】。(5)【运行】菜单【运行子过程】,数据库窗口显示问候信息。,VBE(Visual Bas
5、ic Editor)是Access的编程界面,也是Microsoft Office所有组件公用的程序编辑系统,编写和调试代码在VBE窗口进行。,9.1.2 编程界面,方法1:在窗体或报表设计视图中选控件单击标准工具栏的“生成器”按钮在“选择生成器”对话框中选择“代码生成器”。方法2:右击窗体或报表设计视图中控件快捷菜单中选“事件生成器”“选择生成器”对话框中选择代码生成器”。,9.1.2 编程界面,工程窗口选择对象,属性窗口选择对象的属性,代码窗口,选择事件,(1)代码窗口 代码窗口用来显示、编写以及修改VBA 代码。,对象框,过程框,9.1.2 编程界面,代码区,声明区,(2)“工程资源管理
6、器”窗口也称工程窗口,一个数据库应用系统就是一个工程;系统中的所有类模块及标准模块对象都在该窗口中显示出来。,9.1.2 编程界面,标准模块,类模块,(3)属性窗口 属性窗口列出了选定对象的属性,可以在设计时查看、改变这些属性。,9.1.2 编程界面,(4)标准工具栏,9.1.2 编程界面,(1)“Access视图”按钮,单击按钮由VBE窗口切换到数据库窗口。(2)“插入模块”按钮,单击下拉箭头选择要插入模块的类型,打开一个新模块窗口。(3)“运行子过程/用户窗体”按钮,单击按钮运行标准模块的过程。,9.1.2 编程界面,(4)“中断”按钮,单击按钮暂停正在运行的程序。(5)“重新设置”按钮,
7、单击按钮结束正在运行的程序(6)“设计模式”按钮,单击按钮打开或退出模块的设计模式,是开关键。(7)“工程资源管理器”按钮,单击按钮打开“工程资源管理器”窗口。(8)“属性窗口”按钮,单击按钮打开“属性”窗口。,9.2 数据类型、常量和变量,VBA(Visual Basic for Application)是Microsoft Office系列软件的内置编程语言,VBA的语法与独立运行的Visual Basic编程语言互相兼容,也是面向对象的程序设计语言,功能强大,具有可视化编程环境。程序是对数据进行处理的。,VBA在数据类型和定义方式上均继承了传统的Basic语言的特点。Access 数据表
8、中的字段使用的数据(OLE对象和备注字段数据类型除外)在VBA中都有对应的类型。在VBA中,数据类型用来决定变量可以保存何种数据。VBA支持多种数据类型,为用户编程提供了方便。,9.2.1 数据类型标准数据类型,9.2.1 数据类型标准数据类型,9.2.1 数据类型,2默认值变体类型Variant,是VBA的默认数据类型,凡是没有定义数据类型变量,都被默认为变体类型。变体型变量默认值为empty。Boolean型,也称为逻辑型,只有2个值:真(true)和假(false)。布尔型变量默认值为false。字符串类型String,用单引号或双引号括起来的一组字符,每个字符占1个字节。字符串型变量默
9、认值为空串。与数字有关的数据类型,默认值为0。,3.数据类型转换函数,9.2.1 数据类型,9.2.2 常量,常量是指在程序运行的过程中,其值不能被改变的量。在Access 中,常量的类型有3种:直接常量、符号常量、系统常量(1)直接常量(字面常量)如:10,20%(整型),123.0,345#(双精度),345.12(货币型),#2010-9-10#(日期型),“VBA程序设计”等,(2)符号常量 在程序中,某个常量多次被使用,则可以使用一个符号来代替该常量,这样不仅在书写上方便,而且有效地改进了程序的可读性和可维护性。VBA中使用关键字Const 声明符号常量。其格式如下:Const 常量
10、名 常数表达式 如:Const PI#=3.1415926,9.2.2 常量,说明:符号常量名一般用大写字母,以便与变量名区分。如果符号常量定义在模块声明区,所有模块的过程都能使用该变量,通常在前面加上Global或Public。如:Public Const PI=3.14如果符号常量定义在事件的过程中,该符号常量只在本过程中可用。符号常量定义时不用指明数据类型。,9.2.2 常量,(3)系统常量系统建立的常量,如:true、false、yes、no、on、off、null等。系统常量可以在程序设计中直接使用。内部符号常量用前两个字母指明该常量的对象库;以ac开头的是Access的库常量;以v
11、b开头的是VBA的库常量;以db开头的是DAO的库常量;以ad开头的是ADO的库常量。,9.2.2 常量,变量是指在程序运行过程中值会发生变化的数据。变量的三要素:变量名、变量类型、变量的值。1.变量命名规则由字母、数字、下划线组成,用英文字母开头。不能包含空格以及除下划线之外的标点符号。不能用VBA的关键字(如:dim)。字符个数不得多于255个。变量名不区分大小写。变量名必须惟一,同一个过程不能有2个变量有相同的名字。,9.2.3 变量,2变量的显式声明 显式声明变量的格式:dim 变量名 as 类型 说明:(1)如果省略“as 类型”,默认变体类型,变体类型比其他类型占用更多内存资源。(
12、2)一个dim关键字可以定义多个变量,变量之间用逗号分隔。例如:dim a1 as integer,a2 as boolean(3)用dim定义的变量是局部变量,系统按照数据类型自动设置默认值。,9.2.3 变量,3变量的隐式声明 变量没有显式声明,而是通过一个值指定给变量名,称为变量的隐式声明。隐式声明变量类型,不加类型说明符,变量默认为变体类型。例如:b1%=125 隐式声明变量b1是整型。c1=125 变量c1是变体型,值是125,9.2.3 变量,例9.3 程序中变量和符号常量的使用要求:建立窗口win9-3,在文本框中输入字符串,回车后显示为标签和窗体的标题。(1)新建窗体win9-
13、3。(2)窗体中建立文本框“名称”为t1。(3)窗体中建立标签“名称”为b1“标题”为b1。(4)进入VBE界面在“通用-声明”中输入代码:Const PP=你好!回车。,9.2.3 变量,(5)选t1事件选:AfterUpdate输入代码如下:Rem 文本框t1的更新后事件过程 b1.Caption=PP+t1 Me.Caption=PP+t1,9.2.3 变量,(6)转到窗体视图在文本框中输入:张国华回车,标签和窗体的标题均显示字符串“你好!张国华”。,VBA中的运算符可分为4种类型:算术运算符、字符串运算符、关系运算符和逻辑运算符。(1)算术运算符 算术运算符是常用的运算符,用来执行简单
14、的算术运算,VBA提供了8个算术运算符。乘幂()、负数(-)乘法(*)、除法(/)、整数除法()、求模(mod)、加法(+)、减法(-)。,9.2.4 运算符与表达式,(1)算术运算符,9.2.4 运算符与表达式,(2)关系运算符将两个操作数进行大小比较,结果为逻辑值,即真(True)或假(False)。相等=、不相等、大于、大于等于=、小于、小于等于=。注意:字符串比较,则按字符的ASCII码值从左到右一一比较,直到出现不同的字符为止。,9.2.4 运算符与表达式,(2)关系运算符,9.2.4 运算符与表达式,将操作数进行逻辑运算,结果是逻辑值。与 and、或 or、非 not。,(3)逻辑
15、运算符,9.2.4 运算符与表达式,(4)连接运算符 字符串运算就是将两个字符串连接起来生成一个新的字符串。字符串运算符包括:&运算符+运算符,9.2.4 运算符与表达式,&运算符:将两个不同类型的数据(表达式的值)作字符串连接。例如:1&“+”&2&“等于”&1+2 结果为:“1+2等于3”,注意:由于符号“&”还是长整型的类型定义符,在字符串变量后使用运算符“&”时,变量与运算符“&”之间应加一个空格。运算符“&”两边的操作数可以是字符型,也可以是数值型。例如:12&56 结果为“1256”,9.2.4 运算符与表达式,+运算符:用来连接两个字符串表达式,形成一个新的字符串。注意:“+”运
16、算符要求两边的操作数都是字符串。【例】“+”运算符应用示例。“4321”+1234 结果为数值:5555“4321”+“1234”结果为 43211234abcd+1234 出错4321+“1234”&100 结果为 5555100,9.2.4 运算符与表达式,5.对象运算符 对象运算符有“!”和“”两种。(1)“!”运算符:作用是指定随后为用户引用的内容。使用“!”运算符可以引用一个开启的窗体、报表或开启窗体或报表中的控件。例如:引用打开的“学生信息”窗体。forms!学生信息 引用“学生成绩”窗体中的名称为t1的控件。forms!学生成绩!t1,9.2.4 运算符与表达式,5.对象运算符(
17、2)“”运算符:通常为对象指定相应的值或内容。使用“”运算符可以引用窗体、报表或控件等对象的属性。例如:将“学生信息”窗体中名称为Lab的标签的文字的颜色设置为红色。forms!学生信息!Lab.forecolor=255,9.2.4 运算符与表达式,6.运算优先级(1)算术运算符的优先级:幂取负乘和除整数除法求模加和减。(2)关系运算符的优先级相同,同级运算按从左到右方向进行。(3)逻辑运算符的优先级:notandor。(4)连接运算符的优先级相同。算术运算符 连接运算符 关系运算符 逻辑运算,9.2.4 运算符与表达式,函数实际上是系统事先定义好的内部程序,用来完成特定的功能。VBA提供了
18、大量的内部函数,供用户在编程时使用。函数的调用形式为:函数名(参数表)其中,参数可以是常量、变量或表达式,可以有一个或多个,参数之间用逗号分隔。每个函数被调用时,都会有一个返回值。根据函数的不同,参数与返回值都有特定的数据类型与之对应。,9.3 内置函数,1常用算术函数 算术函数主要包括:求绝对值、取整、产生随机数等。,9.3.1 算术函数,2随机函数关于随机函数说明如下:(1)若x0,每次产生不同的随机数。x0时可直接写Rnd,省略括号和参数。(2)若x=0,产生与最近随机数相同的数。(3)若x0,先产生一个不同的随机数,以后每次产生与前一个相同的数。,9.3.1 算术函数,3函数验证用立即
19、窗口验证下列表达式:?int(100*Rnd)产生099之间的随机整数。?int(101*Rnd)产生0100之间的随机整数。?int(100*Rnd+1)产生1100之间的随机整数。?int(101*Rnd+100)产生100200之间的随机整数。,9.3.1 算术函数,9.3.2 字符串函数,字符串函数主要包括:求字符串长度、求子字符串、测定子字符串位置等。1常用字符串函数,9.3.2 字符串函数,1常用字符串函数,9.3.2 字符串函数,2instr()函数格式:instr(起始位置,字串1,字串2,比较方式)功能:返回字串2在字串1中最早出现的位置。说明:(1)返回值是一个整数。如果返
20、回值为0,说明字符串2不在字符串1中。(2)起始位置是可选项,默认从第一个字符开始检索。(3)比较方式是可选项,0:按区分大小写比较;1:按不区分大小写比较;1:是默认值。,9.3.2 字符串函数,3函数验证?ucase(abcdABCD)返回“ABCDABCD”。?lcase(abcdABCD)返回“abcdabcd”。?trim(AB CD)返回“AB CD”,只处理两端空格,中间空格不做处理。?len(2010年计算机等级考试)返回12,一个汉字当作一个字符。x=123 回车后把123赋给变量x。?Len(x)返回3,len函数可以返回数字变量所含的数字个数。?instr(1,abcAB
21、C,A,0)返回4,按区分大小写比较。?instr(1,abcABC,A,1)返回1,按不区分大小写比较。?instr(“abcABC”,A)返回1,使用默认值。,1常用日期时间函数,9.3.3 日期时间函数,2weekday()函数格式:weekday(x,n)功能:返回17的整数,表示星期几。说明:(1)x是日期数据,n为可选项,默认1。(2)若n为1,星期天返回1,星期一返回2,依次类推。若n为2,星期一返回1,星期二返回2,依次类推。3函数验证?weekday(date,2)如果当前是星期二,返回数字2。,9.3.3 日期时间函数,1常用转换函数,9.3.4 转换函数,2函数验证?as
22、c(ABC)返回65,大写字母A的ASCII码是65。?asc(a)返回97,小写字母a的ASCII码是97。?asc(“0”)返回48,字符0的ASCII码是48。?chr(66)返回大写字母B。?chr(50)返回数字字符2。?str(12)+str(34)返回字符串“12 34”,12和34前均有一个空格,字符串长度6。?val(12)+val(34)返回数值46。?val(1 2)返回数值12。?val(12ab34)返回数值12。,9.3.4 转换函数,9.3.5 输入函数与输出函数,1输入函数inputbox格式:inputbox(提示信息,标题,默认值)功能:提示用户输入一个字符
23、串或数值。说明:(1)“提示信息”是一个字符串,显示在对话框窗口中,必选项。(2)“标题”是一个字符串,显示在对话框窗口标题栏中,可选项,省略此项,标题栏将显示应用程序名。(3)默认值可以是字串或数字,可选项,指定的默认值显示在对话框的输入框中。(4)函数返回值是在输入框中输入的数字或字符串,返回值的类型为string。,9.3.5 输入函数与输出函数,2输出函数MsgBox 格式:msgbox(信息,按钮+图标,标题)功能:显示一个消息框。说明:(1)“信息”是一个字符串,显示在消息框中,必选项,最大长度为 1024 个字符,可以用Chr(13)(回车)或Chr(10)(换行)将消息框中字符
24、串分行显示。(2)格式中的“按钮”是一个数字或VB符号常量,用来定义消息框中按钮个数和按钮作用,可选项,默认值为0。,9.3.5 输入函数与输出函数,(3)格式中的“图标”是一个数字或VB符号常量,配合消息显示在消息框中,起警示作用,可选项。,9.3.5 输入函数与输出函数,说明:“按钮+图标”项可以在输入代码时从提示框中选取系统提供的vb符号常量。例如:MsgBox 要退出吗?,vbYesNo+vbQuestion,确认,代码使用vb符号常量定义消息框的按钮和图标,显示结果,(4)“标题”是一个字符串,可选项,省略此项,标题栏显示应用程序名。(5)函数返回值是整数或vb符号常量,反映了用户在
25、消息框中单击的按钮.,9.3.5 输入函数与输出函数,输入输出函数的使用 例9-4:用输入函数输入数据,用输出函数显示相加的结果。(1)新建窗体win9-4。(2)窗体中建立2个命令按钮“标题”分别为:c1、c2“名称”分别为:c1、c2。(3)按钮c1的click事件代码如下:a=InputBox(请输入 a=)a是变体类型 b=InputBox(请输入 b=)b是变体类型 c=MsgBox(“表达式a+b=&a+b,1+64,输出框),9.3.5 输入函数与输出函数,(4)按钮c2的click事件代码如下:Dim a as integer,b as integer a=InputBox(请
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模块 设计 使用
链接地址:https://www.31ppt.com/p-6422347.html