您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > ACCESS实例教程(第8章vba)
ACCESS实例教程——模块的操作(第8章)ACCESS实例教程1.模块的基本概念2.VBA程序设计基础3.VBA函数的使用4.模块的建立与使用5.过程与参数传递本章要点:ACCESS实例教程VBA(VisualBasicforApplication)是MicrosoftOffice系列软件的内置编程语言;其语法结构与VisualBasic编程语言互相兼容;VB是微软公司推出的可视化BASIC语言,是一种编程简单、功能强大的面向对象开发工具,我们可以像编写VB程序那样来编写VBA程序。采用的是面向对象的编程机制和可视化的编程环境。用VBA语言编写的代码,将保存在Access中的一个模块里,并通过类似在窗体中激发宏的操作那样来启动这个模块,从而实现相应的功能。VBA简介ACCESS实例教程注意:VB语言开发系统是独立运行的开发环境,它创建的应用程序可以独立运行在Windows平台上;而VBA则不同,其编程环境和VBA程序都必须依赖Office应用程序(如Access、Word、Excel等)。VBA简介ACCESS实例教程•VBA编程环境•在Access2003提供的“模块”数据库对象中,使用VBA程序设计语言,在不同的模块中实现VBA代码设计,可以解决实际开发中的复杂应用。•要用Access2003来完成一个实际的数据库应用系统,就应该掌握VBA。ACCESS实例教程8.1认识模块对象模块是由声明、语句和过程组成的集合,以VBA(VisualBasicforApplication)语言编写,作为一个已命名的单元存储在一起。模块有2种类型:类模块和标准模块。使用模块可以在实际开发中实现较为复杂的功能。ACCESS实例教程(1)模块:模块由一个或多个过程组成,每个过程实现一个或几个功能。模块的执行通过特定事件激发相应的事件过程实现。(2)事件过程:事件过程是一组代码,用于响应窗体事件或报表事件。(3)类模块:类模块是包含代码和数据的集合,可以看作是没有物理表示的控件,总是与某一特定的窗体或报表相关联。窗体模块和报表模块都属于类模块。(4)标准模块:标准模块是代码的集合,包含的过程不与任何其他对象相关联,是数据库对象使用的公共过程,保存在数据库窗口中。8.1.1模块的基本概念ACCESS实例教程8.1.2启动Access的编程界面Access的编程界面称为VBE(VisualBasicEditor),是MicrosoftOffice所有组件公用的程序编辑系统。方法1:在窗体或报表设计视图中选控件→单击标准工具栏的“生成器”按钮→在“选择生成器”对话框中选择“代码生成器”。方法2:右击窗体或报表设计视图中控件→快捷菜单中选“事件生成器”→“选择生成器”对话框中选择代码生成器”。ACCESS实例教程8.1.3VBE窗口VBE窗口由工具栏、工程资源管理器窗口、属性窗口、代码窗口和立即窗口组成。工程窗口-选择对象属性窗口-选择对象的属性代码窗口选择事件ACCESS实例教程(1)工程窗口也称工程资源管理器,一个数据库应用系统就是一个工程,系统中的所有类模块及标准模块对象都在该窗口中显示出来。类模块标准模块ACCESS实例教程(2)属性窗口属性窗口列出了选定对象的属性,可以在设计时查看、改变这些属性。当选取了多个控件时,属性窗口会列出所有控件的共同属性。ACCESS实例教程(3)代码窗口代码窗口用来显示、编写以及修改VBA代码。实际操作中,可以打开多个代码窗口,查看不同窗体或模块中的代码,代码窗口之间可以进行复制和粘贴。对象框过程框ACCESS实例教程编写模块对象的代码在代码窗口进行。(1)窗口顶部有2个组合框,左边对象框显示所有对象名称,右边过程框显示当前对象能识别的所有事件名称。选定一个对象,再选定一个事件,系统会自动生成相应事件过程的起始行与结束行,只须在两行中间添加过程代码即可。“通用”过程可以被所有控件调用。某控件的过程只在关联事件中有效。(2)窗口中央代码区有声明区和过程区,声明区中声明模块使用的变量,过程区显示一个或多个过程,之间用一条灰线分隔。(3)窗口底部有2个按钮,单击“过程视图”按钮,只显示当前过程。单击右边“完整的模块视图”按钮,窗口显示全部过程。ACCESS实例教程8.1.4标准工具栏例8-1:创建一个类模块。1、打开数据库;2、新创建窗体——名称为w1;3、在窗体中添加命令按钮——名字为c1;4、选择c1打开属性——【单击】——打开【代码生成器】;ACCESS实例教程PrivateSubCommand0_Click()DoCmd.CloseEndSubDoCmd为对象用来调用内置的方法,Close关闭窗体例8-1:创建一个类模块。对象框过程框ACCESS实例教程例8-2:创建一个标准模块。1、打开数据库;2、选择【模块】对象→单击【新建】按钮;3、在VBE中编辑如下程序;过程名为aa,x,y为整型变量z为整型变量,存放x和y的乘积。显示信息框ACCESS实例教程例8-2:创建一个标准模块。4、保存→模块名为mj;5、新创建窗体——名称为w2;6、在窗体中添加两个文本框→名称分别为t1,t2;7、添加命令按钮——名字为c1;8、选择c1打开属性——【单击】——打开【代码生成器】;调用过程aa,并将文本框的值传递给aaACCESS实例教程8.1.7使用提示与帮助在代码窗口输入代码时,系统会自动显示提示信息,包括关键字列表、属性列表、过程参数列表等,在列表中选取一项后双击鼠标,所选值会自动添加到当前光标处。ACCESS实例教程8.2VBA程序设计基础8.2.1面向对象的程序设计的基本概念(1)对象在自然界中,一个对象就是一个实体,如一辆汽车就是一个对象。在面向对象的程序设计中,对象代表应用程序中的元素,如表、窗体、按钮等。(2)属性属性是对象的特征。如汽车有颜色和型号属性,按钮有标题和名称属性。对象的类别不同,属性会有所不同。同类别对象的不同实例,属性也有差异。例如,同是命令按钮,名称属性不允许相同。ACCESS实例教程(3)事件事件是对象能够识别的动作。如按钮可以识别单击事件、双击事件等。在类模块每一个过程的开始行,都显示对象名和事件名。如:PrivateSubc1_Click()。(4)方法方法是对象能够执行的动作,决定了对象能完成什么事。不同对象有不同的方法。如close方法能关闭一个窗体。ACCESS实例教程(5)集合集合由许多与对象有关的键和值组成,其中的键和值是配对的。如一本书是一个对象,书的页码是键,页码对应的内容是值。所有配对的页码和内容组成了书对象的集合。(6)过程过程是由代码组成的单元,包含一系列计算语句和执行语句。每一个过程都有名字,过程名不能与所在模块的模块名相同。过程有两种类型:sub过程(无返回值),function过程(有返回值)。ACCESS实例教程例8-3:创建一个类模块,动态设置控件属性(1)在窗体ct中创建一个文本框→名称为t1。(2)在窗体ct中创建一个标签→名称为b1→标题为“欢迎你!”。(3)在窗体ct中创建三个命令按钮→名称分别为c1、c2、c3→标题分别为“红色”、“绿色”、“蓝色”。ACCESS实例教程(4)设置各按钮的前景色,在属性窗口可查看颜色值。(5)c1的click事件代码:t1.BackColor=255b1.ForeColor=255ACCESS实例教程(6)c2的click事件代码:t1.BackColor=33792b1.ForeColor=33792(7)c3的click事件代码:t1.BackColor=16711680b1.ForeColor=16711680执行结果:ACCESS实例教程Docmd是Access的一个特殊对象,用来调用内置方法,在程序中实现对Access的操作,诸如打开窗口、关闭窗体、打开报表、关闭报表等。DoCmd对象的大多数方法都有参数,有些参数是必需的,有些则是可选的。若省略可选参数,参数将采用默认值。8.2.2Docmd对象(1)用DoCmd对象打开窗体格式:DoCmd.OpenForm窗体名功能:用默认形式打开指定窗体。例如:DoCmd.OpenForm文本框练习ACCESS实例教程(2)用DoCmd对象关闭窗体格式1:DoCmd.CloseacForm,窗体名功能:关闭指定窗体。例如:DoCmd.CloseacForm,文本框练习格式2:DoCmd.Close功能:关闭当前窗体。(3)用DoCmd对象打开报表格式:DoCmd.OpenReport报表名,acViewPreview功能:用预览形式打开指定报表。例如:DoCmd.OpenReport工资报表,acViewPreviewACCESS实例教程(4)用DoCmd对象关闭报表格式1:DoCmd.CloseacReport,报表名功能:关闭指定报表。例如:DoCmd.CloseacReport,工资报表格式2:DoCmd.Close功能:关闭当前报表。(5)用DoCmd对象运行宏格式:DoCmd.RunMacro宏名功能:运行指定宏。例如:DoCmd.RunMacro宏1(6)用DoCmd对象退出Access。格式:DoCmd.Quit功能:关闭所有Access对象和Access本身。ACCESS实例教程(1)在窗体中建立5个按钮→名称分别为c1、c2、c3、c4、c5→标题分别为“打开文本框练习窗体”、“关闭文本框练习窗体”、“打开工资报表”、“关闭工资报表”、“退出Access”。例8-4:使用DoCmd对象ACCESS实例教程(2)c1代码:DoCmd.OpenForm文本框练习(3)c2代码:DoCmd.CloseacForm,文本框练习(4)c3代码:DoCmd.OpenReport工资报表,acViewPreview(5)c4代码:DoCmd.CloseacReport,工资报表(6)c5代码:DoCmd.QuitACCESS实例教程(7)转到窗体视图→单击不同按钮执行不同操作。ACCESS实例教程8.2.3数据类型与数据类型转换VBA中的基本数据类型•VBA在数据类型和定义方式上均继承了传统的Basic语言的特点。•Access数据表中的字段使用的数据(OLE对象和备注字段数据类型除外)在VBA中都有对应的类型。•在VBA中,数据类型用来决定变量可以保存何种数据。VBA支持多种数据类型,为用户编程提供了方便。ACCESS实例教程8.2.3数据类型与数据类型转换VBA类型符号字段类型取值范围字节数Byte字节0~255之间的整数1Integer%整型-32768~32767之间的整数2Long&长整型-2147483648~2147483647之间的整数4Single!单精度负数:-3.402823E38~-1.401298E-45正数:1.401298E-45~3.402823E384Double#双精度负数:-1.79769313486232E308∼-4.94065645841247E-324正数:4.94065645841247E-324∼1.79769313486232E3088Currency@货币-922337203685477.5808∼922337203685477.58078String$文本0∼65535个字符Boolean是/否true或false1Date日期/时间January1,100到December31,99998Variant无(1)标准数据类型ACCESS实例教程1.数值型数据类型包括:Byte、Integer、Long、Single、Double和Currency。(1)Byte以一个字节的无符号二进制数存储,取值范围为0~255。(2)整数(integer和Long)整数是不带小数点和指数符号的数,在机器内以二进制补码形式表示。整型(Integer)长整型(Long)例如:345、-345、345%均表示整型数。345&、-345&均表示长整型数。ACCESS实例教程(3)浮点数(single和
本文标题:ACCESS实例教程(第8章vba)
链接地址:https://www.777doc.com/doc-4536799 .html