Access课件-第8章.ppt
《Access课件-第8章.ppt》由会员分享,可在线阅读,更多相关《Access课件-第8章.ppt(103页珍藏版)》请在三一办公上搜索。
1、第8章 程序设计模块,主要内容,8.1 Access模块概述8.2 VBA程序设计基础8.3 MsgBox与InputBox函数8.4 VBA程序流程控制8.5 数组8.6 DoCmd对象8.7 过程8.8 数据库编程,标准模块作为数据库的对象被列在Access数据库的对象列表内,用来保存Access数据库的通用声明与通用过程。标准模块中的全局变量和全局过程具有全局特性,其作用范围在整个应用程序里,生命周期是伴随着应用程序的运行而开始,应用程序的关闭而结束。标准模块中的过程可以在数据库的任意位置调用。,8.1 Access模块概述,8.1.1 标准模块,8.1 Access模块概述,新建标准模
2、块,在模块中添加Hello World子程序,弹出消息框“Hello World”,在“立即窗口”中显示“世界你好!”。,任务8-1,任务解决过程:新建模块:“模块1”。,输入程序代码:在“模块1”的代码窗口内输入下面的程序代码:Public Sub HelloWorld()MsgBox Hello World!End Sub,保存模块:单击Visual Basic编辑器标准工具栏内的“保存”命令按钮打开“另存为”对话框,输入模块名称“模块基本练习”并单击“确定”按钮,模块被保存到数据库内。,运行子程序,方法 在“HelloWorld”子程序代码内的任意位置单击鼠标,然后单击Visual Ba
3、sic编辑器“运行”菜单的“运行子过程/用户窗体”命令,或单击“运行”命令按钮 执行子程序。运行子程序,方法:在Visual Basic编辑器内打开“立即窗口”(单击“视图”菜单下的“立即窗口”),在“立即窗口”内输入:Call HelloWorld()输入回车键确认。,相关知识点:Visual Basic编辑器窗口包含“工程资源管理器”,显示了数据库的各个模块,用鼠标双击某一模块名称将打开该模块的代码窗口。“代码窗口”,用于显示模块的程序代码。“立即窗口”,可以用来跟踪显示代码执行过程中各个变量的值。模块由声明语句和过程构成,声明语句包括下面两种:Option语句:为模块中的所有过程设置VB
4、A选项。Dim语句:声明VBA变量。,语句:Option Compare Database是系统自动添加到所有模块的声明语句,用于设置字符串的比较方法。既以Access根据数据库的排列顺序来比较字符串的大小。子程序也称为Sub过程,是过程的一种。子程序以关键字Sub开始,以End Sub语句结束。Sub语句前面的Public表示公用的,即子程序可以在数据库任意位置调用。本例中MsgBox语句的作用是调用消息框,在消息框内显示语句中的字符串。,执行子程序有很多种办法,可以在程序代码中调用、在“立即窗口”内调用,还可以通过Visual Basic编辑器内的菜单命令调用。“立即窗口”用于测试和调试程
5、序代码。在代码的执行过程中通过“立即窗口”能够显示、更改程序的临时变量值或属性值。在“立即窗口”内也可以进行简单的运算、调用函数或过程。“立即窗口”内每输入一条语句需要输入回车键以执行该语句。在过程中使用的Debug对象表示“立即窗口”,“Debug.Print”方法将结构显示在“立即窗口”内。,边学边练在“模块基本练习”模块内添加一个新的子程序Hello(),使其运行时显示“世界你好!”消息框,保存模块并运行子程序。新建一个窗体,在窗体上添加一个命令按钮,给命令按钮添加过程,使单击按钮调用上面程序中的Hello()子程序。,想一想什么是模块?Access VB模块有哪些?如何打开Visual
6、 Basic编辑器?你能找到3中不同方法吗?一个模块里面可不可以有多个子程序吗?,类模块是与类对象相关联的模块,也称为类对象模块。Access的类模块有3种基本形式:窗体类模块、报表类模块和自定义类模块。窗体与报表是典型的类模块。,8.1 Access模块概述,8.1.2 类模块,类模块从属于相关联的对象,其中定义的变量与过程不能被其他对象引用。类模块的生命周期随着对象的运行而开始,随着对象的关闭而关闭。窗体类模块和报表类模块内主要包含响应用户对窗体或报表操作的事件过程。,8.1 Access模块概述,8.1.2 类模块,8.1 Access模块概述,缩放图像窗体。,任务8-2,任务解决过程:
7、新建窗体:在窗体内添加一个“图像”控件和两个命令按钮控件。适当调整窗体、图像控件、命令按钮的大小与位置。,设置窗体与对象的属性:选择窗体或窗体内的对象,单击Access工具栏上的“属性”按钮 打开对象的属性窗口,设置窗体及控件对象的属性。保存窗体,窗体名为“缩放图像”。,为命令按钮添加事件过程:在“图像缩放”窗体的设计视图内选择cmdExpand命令按钮;在命令按钮的属性窗口内选择“事件”选项卡,在“单击”事件属性内选择“事件过程”。,单击命令按钮“单击”事件属性框旁的“生成器”按钮 进入Visual Basic编辑器。由于用户在cmdExpand命令按钮的“单击”事件属性中选择了“事件过程”
8、选项,系统为cmdExpand命令按钮自动添加了一个空的“单击”事件过程:Private Sub cmdExpand_Click()End Sub,在过程cmdExpand_Click()内输入下程序代码:imgFlower.Width=imgFlower.Width-30 imgFlower.Left=imgFlower.Left+15 imgFlower.Height=imgFlower.Height-20 imgFlower.Top=imgFlower.Top+10按照同样的方法,给命令按钮cmdContract添加“单击”事件过程和程序代码,如下图所示。,单击“保存”按钮保存模块,关闭
9、Visual Basic编辑器,返回到Access数据库窗口。运行窗体:打开“缩放图像”的窗体视图,单击“放大”或“缩小”命令按钮,窗体内的图像将随之放大或缩小。,VBA的程序代码保存在数据库的标准模块和类模块中。模块中的语句有声明语句和过程两部分组成。模块级的声明语句声明模块级别或全局常量、变量,过程包括自定义函数、子程序和对象的事件过程。过程内部的程序代码有局部变量声明语句和可执行语句组成。,8.2 VBA程序设计基础,1.注释语句的书写格式在VBA程序中,注释语句有以下两种形式:使用Rem语句注释文字:Rem 使用单引号“”注释文字:,8.2 VBA程序设计基础,8.2.1 程序的书写格
10、式,2.一行多语句与一语句多行Visual Basic语法规定若将多条语句写到一行内,只要在语句和语句之间加入半角冒号即可。对于很长的语句,可以将其分为几行书写。在语句的行末加入空格和一个下划线“_”(续行标志),未写完的代码写到下一行内,与上一行的代码合为一个语句。,VBA提供了12中基本数据类型和用户自定义类型。表8.2列出了基本数据类型的关键字、声明字符、占用存储空间、示例与取值范围。,8.2.2 VBA的数据类型,VBA的数据类型,VBA的数据类型,在程序运行时,那些用来保存能够随时改变的量被称为变量,变量通常用简单的字母或词汇表示,如x、a1、intC等。声明变量时由系统指派变量占用
11、的内存空间。常量是在程序运行中不能改变的数据。,8.2.3 变量和常量,任务解决过程:新建窗体:新建窗体并进入窗体的设计视图,在窗体内添加一个文本框控件、一个标签控件和一个命令按钮控件。,已知圆的半径计算圆面积。,任务8-3,设置窗体及控件对象的属性。,保存窗体,窗体名为“已知半径计算圆面积”。,为命令按钮添加事件过程:给命令按钮“cmdCalculate”添加“单击”事件过程:Private Sub cmdCalculate_Click()Const PI=3.1415926 Dim r As Single,area As Single txtR.SetFocus r=Val(txtR.Te
12、xt)area=Round(PI*r 2,2)lblArea.Caption=圆面积为:+Str(area)End Sub,运行窗体:打开“已知半径计算圆面积”窗体的“窗体视图”,在文本框内输入一个半径,单击“计算面积”命令按钮将在标签内显示出圆面积。,1.变量的命名原则变量名必须以英文字母开头,变量名称中不能包含空格、句点(.)、惊叹号(!)、或、&、$,#等字符,最长不能超过255个字符。变量名不能是VBA关键字。关键字是那些在VBA语言有特殊含义的词,是VBA语言的一部分,包括预定义的语句(如Dim、If、Sub、For)、函数(如sqr、len、val)和运算符(如Or、And)等。变
13、量名在其有效范围内必须是唯一的。,变量,2.变量的声明VBA是一个语法非常宽松的程序设计,用户可以直接使用变量而不必声明。不经声明而使用的变量系统将按照Variant类型处理。在模块的通用声明部分添加语句:Option Explicit将强制用户必须使用Dim、Private、Public、ReDim 或 Static 语句来显式声明所有的变量,变量在声明后才能引用。这样可以减少因为变量名称的拼写失误而带来的程序错误,使得程序设计更加规范。,声明变量最常用的语句是Dim语句,其语法格式如下:Dim As 例如:Dim C 声明一个名为C的变体类型变量Dim A As Integer 声明一个名
14、为A的整型变量Dim String1 As String 声明一个名为String1的可变长字符串,使用类型声明字符可以简化变量的声明语句,如:Dim A%声明变量A为整型变量Dim String1$声明变量String1为可变长字符串一个Dim语句可以同时声明多个变量,每个变量必须有自己的类型声明符,类型声明符不能共用。如:Dim A,B!,C As Double声明了变体类型变量A、单精度变量B,和双精度变量C。Dim X as Single,Y!,I as Integer声明单精度变量X、Y和整型变量I。,3.变量的作用域 变量定义的位置与方式不同,则它的作用域也不同。(1)局部变量变量
15、定义在过程(函数或子程序)内部,使用Dim语句定义,变量的作用域被限定在该过程内部。(2)模块级变量 变量定义在模块的声明区,使用Dim或Private语句定义,则变量的作用域为整个模块,即模块内的所有过程都可以引用该变量。,(3)全局变量变量定义在标准模块的声明区,使用Public语句定义,则变量为全局变量。全局变量可以在任何模块的任何过程内调用。,常量是在程序运行中不能改变的数据,用户可以使用符号常量(用户定义的常量,使用具有意义的名称来代替数字或字符)来增加代码的可读性与可维护性。声明符号常量的语句格式为:Public|Private Const As=,符号常量,常量,边学边练参考本例
16、建立窗体并编写程序,使其对输入的出生日期计算出年龄,并显示到窗体的标签对象上。建立一个窗体,在窗体上添加两个文本框、一个标签、一个命令按钮,并适当调整文本框、标签、命令按钮的大小与位置。给命令添加“单击”事件过程,使得程序运行时,将两个文本框内的数值相加后显示在标签控件内。,想一想什么是符号常量?程序中为什么要使用符号常量?表示数值类型的变量有哪些?什么是“局部变量”、“模块级变量”和“全局变量”?,MsgBox函数用于显示消息框,输出程序信息,其语法格式如下:MsgBox(prompt,buttons,title,helpfile,context)MsgBox函数各参数含义为:Prompt:
17、必要参数,显示在对话框中的消息文本。其最大长度为1024个字符,由所用字符的宽度决定。,8.3 MsgBox与InputBox函数,8.3.1 MsgBox函数,Buttons:可选参数,用于指定消息框上显示按钮的数目及形式、使用图标的样式、缺省按钮及消息框的强制回应等。如省略,则buttons的缺省值为0。Title:可选参数,为对话框标题栏中文本。Helpfile与Context:可选参数,设置对话框的帮助文件及指定帮助主题的上下文编号。Buttons参数的取值及说明:,8.3 MsgBox与InputBox函数,1.MsgBox函数,MsgBox函数返回给程序一个整数,用来表示用户单击了
18、哪一个按钮。,InputBox函数用来在程序执行时打开输入框,并将输入文本信息返回到程序中。InputBox函数的语法格式如下:InputBox(prompt,title,default,xpos,ypos,helpfile,context),2.InputBox函数,其中各参数的含义为:Prompt:必要参数,输入框的提示文本。其最大长度为1024个字符。如果需要在对话框中显示多行数据,则可在各行之间用回车符(Chr(13)、换行符(Chr(10)或回车换行符的组合(Chr(13)&Chr(10)来分隔。也可以使用VBA的回车换行符常数vbCrLf。Title:可选参数,为对话框标题栏中文本
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Access 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5414525.html