Access数据库实用教程第十章模块

上传人:cel****303 文档编号:243791611 上传时间:2024-09-30 格式:PPT 页数:36 大小:287.50KB
返回 下载 相关 举报
Access数据库实用教程第十章模块_第1页
第1页 / 共36页
Access数据库实用教程第十章模块_第2页
第2页 / 共36页
Access数据库实用教程第十章模块_第3页
第3页 / 共36页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,Access数据库实用教程第十章模块,10.1 模块的根底知识,10.1.1 模块的概念,1.模块,模块是一种重要的Access数据库对象,是用VBA语言的声明和过程编写的程序代码段,它们是作为一个整体被存储和使用的。利用模块可以将各种数据库对象连接起来,从而使其构成一个完整的系统。,模块有两个根本类型:类模块和标准模块。,类模块:包含类定义的模块,包括属性和方法的定义。窗体和报表模块都是类模块,也可以自定义类模块。,标准模块:包含在数据库窗口的模块对象列表中,是不与任何对象相关联的通用过程。这些过程可以在数据库中的任何位置被直接调用执行。,使用宏不需要编程,使用模块需要编程。,模块的运行速度远比宏的运行速度要快。,VBA包含有宏的所有等效语句,还可以创立自己的函数。,模块在数据库维护、错误信息处理、内置函数的使用及创立处理对象等方面优于宏。,模块是由一个或多个过程组成的,模块中的每一个过程都可以是一个函数过程或是一个子程序过程。,过程是用Visual Basic 语言编写的程序代码段,由声明和一系列需要执行的操作语句组成。过程是模块的一个单元,可以被放置在标准模块或类模块中。,过程分有Sub过程和function过程两类,区别在于Sub 过程没有返回值,function 过程有返回值。,1Sub 过程:,执行一系列的操作或运算,但是没有返回值。,定义格式:,Private|Public Static Sub 过程名(参数列表),语句组,End Sub,参数列表格式:,ByVal 参数名 As 类型,调用格式:,Call 过程名(实参),或 过程名 实参,2事件过程,是把事件和过程合为一体,利用事件驱动机制来启动执行过程。格式:,Private Sub 对象名_事件名(参数列表),事件响应代码,End Sub,调用方法:事件过程除了由系统自动来调用之外,也可以将它看作一个普通的子程序在程序中用代码来调用,调用语法没有特殊之处,,如:Call comadd_Click,3Function 过程,也称为函数,执行结果会返回一个值。可以使用系统函数,也可以自定义函数。,定义格式:,Private|Public Static Function 过程名(参数列表)as 返回值类型,语句组,End Function,调用方法:可以直接调用,或作为表达式的一局部实现调用。,说明:函数是特殊的过程,注意与过程的区别就可以了:,函数有数据类型,即返回值的类型,缺省为Variant;,要给函数名本身赋值,这个值就是返回值;,如果象调用过程一样调用函数,语法上是可以的,只是放弃了返回结果。,Visiual Basic 开发环境,1.翻开Visual Basic编辑器的方法,翻开Visiual Basic编辑器有如下几种方法:,创立新的标准模块,可选择数据库窗口上的“模块对象,然后单击数据库窗口工具栏上的“新建按钮,那么在VBA编辑器中创立了一个空白模块,即可输入程序代码。,如果已有一个标准模块,可选择数据库窗口上的“模块对象,凡在模块对象列表中的模块,都可以在VBA编辑器中翻开。,对属于窗体或报表的模块,可以翻开窗体或报表的设计视图,单击设计工具栏上的“代码按钮,即可在VBA编辑器中翻开模块,并显示模块的开场局部。,直接定位到窗体或报表上指定对象的事件处理过程,具体做法是:单击属性窗口的“事件页中某个事件框的“生成器按钮,翻开“选择生成器对话框,选择其中的“代码生成器选项即可。,2.Visiual Basic编辑器,Visiual Basic编辑器由如下几局部组成:,VBA的菜单栏,VBA的工具栏,工程资源管理器:工程资源管理器,简称工程窗口,列表框所列出的是在应用程序中用到的模块文件。,属性窗口:属性窗口中列出了所选对象的各种属性,可按照按字母序和分类序两种格式查看属性。,代码窗口:是一个开发、调试系统,包含两个组合框,左边是“对象组合框,右边是“过程组合框。“对象组合框中列出的是所有可用的对象名称,选择某一对象后,“过程组合框中会列出该对象所有的事件过程。,立即窗口:可以查看一行的VBA代码的执行结果,显示表达式的值,查看控件或字段的值。,翻开“立即窗口有以下2种方法:,方法一:按组合键 CTRL+G,随时可以显示“立即窗口。,方法二:单击“调试工具栏上的“立即窗口按钮。,10.2 VBA程序设计根底,10.2.1,数据类型、常量及变量,1.,常用的数据类型,类型标识符,数据类型,类型标识符,数据类型,Byte,字节类型,Date,日期型,Boolean,布尔类型,Currency,货币型,Long,长整型,String,字符型(定长),Single,单精度实型,Double,双精度实型,Integer,整型,String,字符型(变长),Variant,变体(数字),Variant,变体(字符),TYPE,用户自定义,常量是指在程序运行的过程中其值始终不变的量,VBA支持以下几种类型的常量。,数值常量:由数字组成,如:45.3,12345。,字符常量:由定界符“和括起来的符号串组成,如:“Access 2002。,日期常量:由定界符#括起来,如#1/1/2002#。,符号常量:用于替代数值或字符串。符号常量是需要声明定义的。使用const语句可以定义常量,该常量的值不能修改或重新赋值,也不能创立与固有常量同名的常量,如:const PI=3.14159265。,固有常量:可以在宏或者VB中使用,VBA中的固有常量以“vb开头,例如 vbcurrency,Access 中的固有常量以“ac开头。可以使用对象浏览器查看对象库中的固有常量。,系统定义常量:True,False 和 Null。,1变量的命名,变量名是由英文字母开头的字符和数字串组成的,且字母不区分大小写,长度不超过255个字符。,变量名中不允许出现空格、等符号。,变量名不能用VBA的关键字。,2变量声明,格式:,Dim 变量名1 as 数据类型1,变量名2 as 数据类型2,,变量名N as 数据类型N,说明:如果变量不声明就使用,也是允许的,VBA会默认该变量为Variant数据类型。,3变量的作用域,局部变量:用Dim或Private声明的变量是局部变量,其作用域或者是所属的子程序范围,或者是其所属的模块的范围。,全局变量:如果声明变量时使用Public,那么该变量是全局变量,其作用域是数据库中的所有过程。,4.数组变量,1静态数组,数组声明格式:,Dim 数组名维数定义 as 类型,其中维数定义及各维的范围是:,一维数组:to,二维数组:to,to,类推可以定义更高维的数组.,如:Dim a(1 to 9)as integer,Dim b(3,1 to 4)as double,注意:如果不指定下标下界,默认的缺省值下界为0。,2动态数组,动态数组是指数组的长度可以改变,创立方法是:,声明一个未指明大小及维数的数组。,用Redim语句再次声明数组的长度,即动态数组元素的个数可以变化。,假设要保存原数组中的值,可以用Redim Preserve 语句来扩大数组。,如 Dim a()as integer,Redim a(5),【例10-1】定义动态数组。(代码见例10-1(P245).txt),10.2.2 VBA程序设计,1.顺序构造语句,按程序的书写顺序依次执行各段程序。,1赋值语句,一般格式:,变量名=表达式 或,对象名.属性名=表达式,功能:把表达式的值赋给变量,或把表达式的,值赋给对象属性。,【例10-2】给变量x赋值。,【例10-3】为命令按钮属性设 置值。,2数据的输入与输出的格式为:,InputBox(提示,标题,缺省值,x 坐标位置,y坐标位置),InputBox函数是输入函数,执行时产生一个对话框,等待用户输入数据,并返回所输入的内容。,【例10-4】设计一个程序,由用户输入半径,计算并输出圆周长和圆面积。(代码见例10-4(P246).txt),注意:使用窗体上的控件时,必须使用SetFocus方法使该控件获得焦点。,根据给定的条件进展判断,由判断结果来确定执行哪个分支。,1条件构造语句,单行条件构造语句IfThenElse,格式为:,If 条件表达式 Then 语句序列1 Else 语句序列2,【例10-5】输入x,计算y的值,并将它赋值给text2。如输入x值,判断假设x大于等于0,那么y=x(1/2);假设x小于0,那么y=-x。(代码见例10-5(P247).txt),使用IIf 函数,使用IIf函数可以实现一些简单的选择构造。,格式:,IIf(条件表达式,真局部,假局部),【例10-6】输入x,计算y的值,并将它赋值给text2。(代码见例10-6(P248).txt),块构造条件语句,格式:,If(条件Then,语句列1,Else,语句列2,End If,【例10-7】输入x,计算y的值,并将它赋值给text2。(代码见例10-7(P248).txt),If语句的嵌套,格式:,If(条件1)Then,ElseIf(条件2)Then,End If,End If,2选择构造语句,格式:,Select Case 表达式,Case 表达式值列表1,语句1,Case 表达式值列表2,语句2,Case Else 语句n,End Select,【例10-8】select case 语句的应用。,如:根据工作分类计算奖金,当工作为第1类时,奖金为工资的10%,当为第2,3类时,奖金为工资的9%,当为第4,5,6类时,奖金为为工资的7%,当为第8类以后,奖金为100,其他情况没有奖金。(代码见例10-8P249.txt,1Do循环,Do循环主要用于重复执行一个语句块,重复次数不定。,前测型当型循环语句,格式:Do while 条件表达式,循环体语句组,Loop,说明:执行时先测试表达式的值,如果为假,那么跳过所有循环语句块,只要表达式为真,循环就一直执行,直至表达式为假时完毕。,【例10-9】求100之内所有自然数之和。代码见例10-9(P250).txt),后测型的当型循环语句,格式:Do,循环体语句组,Loop while 条件表达式,说明:,当条件为真时继续执行循环.条件为假时,终止循环.,前测型直到循环语句,格式:Do until 条件表达式,循环体语句组,Loop,说明:,执行时先测试表达式,当条件为假时执行循环体,直到表达式条件为真时完毕循环语句。,后测型直到型循环语句,格式:Do,循环体语句组,Loop until 条件表达式,说明:,先执行循环语句块,然后测试条件表达式的值,条件为假时继续执行循环体,直到表达式为真时完毕循环,【例10-10】求100之内所有自然数之和。(代码见例10-10(P251).txt),2For循环,当不知道循环次数时,一般用Do循环,循环次数时用For循环最为方便。格式:,For 循环控制变量=初值表达式 To 终值表达式 Step 步长,循环体语句组,Next 循环控制变量,【例10-11】求100之内自然数之和。(代码见例10-11(P251).txt),【例10-12】计算1*3*5*7*9。(代码见例10-12(P252).txt),【例10-13】计算某组10个同学的总分、平均分。(代码见例10-13(P252).txt),【例10-14】随机产生10个数,按递增顺序进展排序。(代码见例10-14(P252).txt),注意:,数组名、数组类型和维数必须与数组声明时的一致,下标值应在数组声明时所指定的范围之内。,在同一过程中,数组与简单变量不能同名。,10.3 模块的创立,10.3.1 创立过程,1.创立自定义的Sub过程,选择所需要“对象,翻开对应的模块。,在代码窗口中键入Sub语句声明该过程,输入过程名、过程参数,在
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!