1、Access实例教程ACCESS实例教程 ACCESS概述(第概述(第1章)章)1,启动并退出Access 20032,认识Access 2003工作窗口3,了解Access 的7种数据库对象4,创建Access数据库5,数据库的基本概念本章要点:本章要点:1.1 Access简介简介 Access 是一种关系型的桌面数据库管理系统,作为Microsoft Office软件的组件之一,在世界范围内得到广泛使用。Access具有功能强大和操作简单的特点,特别适合数据库技术的初学者。以下将以Access 2003为教学背景介绍Access的使用方法。1有强大的开发工具VBA,可以编写数据库应用程序
2、。2能访问多种格式的数据,如:Excel数据表和text文本文件。3支持ODBC标准的SQL数据库的数据。4方便的向导功能使设计过程自动化。5可以使用Internet功能发布信息。6采用OLE技术支持对象的嵌入与链接。7具有较强的安全性。1.1.1 Access1.1.1 Access的特点的特点1.1.2 Access的工作窗口 Access 2003的工作窗口中包含一个或多个Access对象的视图窗口或设计窗口,除了数据库窗口一次只能打开一个,其他对象可以同时打开多个。1.1.3 Access 2003的数据库窗口 数据库窗口是数据库的设计视图,也是其他对象窗口的基础。窗口左边显示数据库的
3、7个对象,选取一个对象类别,然后进行该类对象的设计与编辑。窗口右边是某类对象的成员列表。1.2 1.2 关于数据库的基本操作关于数据库的基本操作1.2.1 Access数据库文件 Access数据库文件的扩展名为“mdb”,除了页对象之外的其他数据库对象都是该数据库文件中的一项内容,不能作为单独的文件保存在磁盘上。如果关闭数据库窗口,所有基于该数据库的对象窗口都将被关闭。1.2.2 启动Access 2003access是office的组件。1.2.3 打开数据库与创建数据库1.单击“新建文件”选项将创建一个空的数据库。2.双击一个扩展名为mdb的Access数据库文件,可启 动Access并
4、打开该数据库。1.2.4 关闭数据库与退出Access 单击数据库窗口标题栏的关闭图标,或使用“文件”菜单下的“关闭”选项,只关闭数据库,不退出Access。退出Access 2003可以用如下4种方法。1,单击Access 2003工作窗口标题栏右端的关闭按钮。2,打开Access 2003工作窗口的“文件”菜单选“退出”项。3,用Alt+F+X组合键。(先按下Alt键不松手,敲F键再敲X键。)4,用Alt+F4组合键。(先按下Alt键不松手,敲F4键。)1.3 ACCESS1.3 ACCESS的的7 7种数据库对象种数据库对象 Access有7种数据库对象,分别是:表、查询、窗体、报表、页
5、、宏、模块。1.3.1 表 表由字段和记录组成。字段是表中的列,每个字段代表一条信息在某一方面的属性,字段有类型,如“姓名”字段是字符型的,“年龄”字段是数字型的。字段的基本属性有:字段名称、数据类型、字段大小、默认值等。记录是数据表中的行,由一个或多个字段的值组成,一条记录是一条完整的信息,显示一个对象的所有属性。如:001、张三、男、21,可以作为一条记录。表是整个数据库系统的基础。一个数据库中可以包含多个数据表,一个表应围绕一个主题建立,如学籍表、成绩表。表之间可以建关系,建立了关系的多个表可以像一个表一样使用。1.3.2 查询 查询是数据库的核心操作,根据指定条件从数据表或其他查询中筛
6、选出符合条件的记录。查询结果以二维表的形式显示,是动态数据集合,每执行一次查询操作都会显示数据源中最新数据。查询类型有:1,选择查询2,交叉表查询3,生成表查询4,更新查询5,追加查询6,删除查询7,SQL查询8,参数查询1.3.3 窗体 窗体用来显示和修改表,是用户与Access应用程序之间的主要接口,可以简化数据库的操作。窗体的数据源来自表或查询,利用窗体将整个应用程序组织起来,形成一个完整的应用系统。1.3.4 报表 报表用来以格式化方式显示并打印数据。利用报表可以整理和计算基本表中的数据,有选择的显示指定信息。报表的数据源来自表、查询或SQL语句,在报表中不能输入数据。1.3.5 页
7、页又称为数据访问页,是一种特殊的Web页,为通过网络发布数据提供方便。数据访问页直接与数据库相连,用户通过数据访问页查看和编辑Access数据库中的数据。对页中数据进行修改、添加或删除操作,结果会保存在数据库中。1.3.6 宏 宏是一系列操作的集合,如打开窗体、打印报表,完成大量的重复性工作,快速实现数据库的简单操作。可以单击某个命令按钮时运行该宏。1.3.7 模块 模块是VBA(Visual Basic for Applications)程序的集合,实现数据库较为复杂操作。模块将声明和过程作为一个单元保存,完成宏不能完成的任务。模块有两个基本类型:类模块和标准模块。类模块与某个窗体或报表相关
8、联,标准模块存放供其他Access数据库对象使用的公共过程。1.4 1.4 数据库基本知识数据库基本知识1.4.1 基本概念1数据 从计算机角度看,数据是能被计算机识别、存储和加工的的信息载体。例如:“张三很高”是信息,“张三的身高为2米”是数据。在计算机中,文字、图形、图像、声音、动画、影像等都是数据。2数据 数据库(DataBase,DB)是存储在计算机存储设备中的、结构化的、可共享的数据集合。数据库中的数据面向多种应用,可以被多个用户或多个应用程序共享。3数据库应用系统 数据库应用系统是用数据库系统开发的面向某类实际应用的计算机应用软件。如:学生管理系统、图书管理系统。4数据库管理系统
9、数据库管理系统(DataBase Management System,DBMS)是用来建立、使用、维护数据库的数据管理软件,位于用户与操作系统之间,属于计算机系统软件的范畴。5数据库系统 数据库系统(DataBase System,DBS)是引入数据库技术后的计算机系统,包括:硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员、用户。6数据库、数据库管理系统、数据库系统三者的关系 数据库系统包括数据库和数据库管理系统。1.4.2 数据模型数据模型有3种:层次模型、网状模型、关系模型。Access数据库管理系统所使用的数据模型是关系数据模型。1.层次模型层次模型是树型结构,自顶向下,层
10、次分明。层次模型要满足以下两个条件:有且只有一个根节点,根节点没有双亲。其他节点有且只有一个双亲。2,网状模型 网状模型是用无向图结构,是一种交叉关系,是关系模型的扩展。网状模型要满足以下两个条件:允许一个以上的节点没有双亲。一个节点有多于一个的双亲。3,关系模型 关系模型是用二维表结构,在关系模型中,操作对象和操作结果都是二维表。关系模型是目前最重要的数据模型,被几乎所有数据库管理系统支持。关系模型要满足以下几个性质:元组个数有限性:元组的个数据是有限的。元组惟一性:每个元组都是惟一的。元组次序无关性:元组的次序可以任意交换。元组分量的原子性:元组的分量是不可分割的基本数据项。属性名惟一性:
11、属性的名称各不相同。属性次序无关性:属性的次序可以任意交换。属性分量值域同一性:属性的分量与与属性值域相同。ACCESS实例教程 数据表的操作(第数据表的操作(第2章)章)1,建立表结构2,向表中输入数据3,建立表对象之间的关联4,操作表中记录5,设置数据表格式本章要点:本章要点:2.1 2.1 建立表结构建立表结构 数据表由表结构和表记录两部分组成,建立表结构在表的设计视图中完成,表的全部字段和每个字段的属性在设计视图中确定。2.1.1 2.1.1 表的设计视图表的设计视图 一个表要围绕一个主题设计字段,每个字段都应该是最小的逻辑部分,计算字段或推导字段不要作为表中的字段。2.1.2 2.1
12、.2 字段的命名规则字段的命名规则字段的命名规则如下:1字段名可以包含字母、汉字、数字、空格和其他字符,第 一个字符不能是空格。2字段名不能包含小数点、叹号、方括号、西文单引号、西 文双引号。3字段长度为164个字符,在Access中一个汉字当作一个 字符看待。2.1.3 字段大小 字段大小用来定义字段所使用的存储空间大小,是字段值所占的字节数。只有文本型字段和数字型字段需要指定字段大小,其他类型的字段由系统分配字段大小,例如,“出生日期”是日期/时间类型,字段大小为8,“婚否”是逻辑类型,字段大小为1。一个字符和一个汉字字段大小都是1。2.1.4 字段的数据类型 数据类型决定用户能保存在该字
13、段中值的种类。Access字段的数据类型有10种,分别是:文本、备注、数字、日期/时间、货币、自动编号、是/否、OLE对象、超链接、查阅向导。1文本型 文本型字段用来存放文本或作为文本看待的数字。如:学号、姓名、性别等字段。如果设置字段大小为5,则该字段的值最多只能容纳5个字符。文本型字段的默认大小为50,最多可达255个字符。文本型数字的排序按照字符串排序方法进行。如文本型数字按升序排序:1、10、100、2、20、2002备注型 备注型字段用来存放较长的文本和文本型数字。如:备忘录、简历等字段都是备注型。当字段中存放的字符个数超过255时,应该定义该字段为备注型。备注型字段大小是不定的,由
14、系统自动调整,最多可达64K。Access不能对备注型字段进行排序、索引、分组。3数字型 数字型字段存放数字。如:工资、年龄等,数字型字段可以与货币型字段做算术运算。数字型字段的大小由数字类型决定,常用数字类型有以下几种:(1)字节,存放0255之间的整数,字段大小为1。(2)整型,存放-3276832767之间的整数,字段大小为2。(3)长整型,存放-21474836482147483647之间的整数,字 段大小为4。(4)单精度型,存放-3.4E383.4E38之间的实数,字段大小 为4。(5)双精度型,存放-1.79734E3081.79734E308之间的实 数,字段大小为8。4日期/
15、时间型 日期/时间型字段存放日期、时间、或日期时间的组合。如:出生日期、入校日期等字段都是日期/时间型字段。字段大小为8个字节,由系统自动设置。日期/时间型的常量要用一对#号括起来。5货币型 货币型字段存放具有双精度属性的数字。系统自动将货币字段的数据精确到小数点前15位及小数点后4位。字段大小为8,由系统自动设置。向货币型字段输入数据时,系统会自动给数据添加2位小数,并显示美元符号与千位分隔符。6自动编号型 自动编号型字段存放系统为记录绑定的顺序号,长整型,字段大小为4,由系统自动设置。一个表只能有一个自动编号型字段,该字段中的顺序号永久与记录相联,不能人工指定或更改自动编号型字段中的数值。
16、删除表中含有自动编号字段的记录以后,系统将不再使用已被删除的自动编号字段中的数值。例如,输入10条记录,自动编号从1到10,删除前3条记录,自动编号从4到10,删除第7条记录,自动编号中永远设有7。与财务、税务有关的数据表通常设自动编号型字段,增加数据的安全性。7是/否型 是/否型字段存放逻辑数据,字段大小为1,由系统自动设置。逻辑数据只能有2种不同的取值。如:婚否、团员否。所以,是/否型数据又被称为“布尔”型数据。是/否型字段内容通过画“”输入,带“”的为“真”,不带“”的为“假”,“真”值用true或on或yes表示,“假”值用false或off或no表示。8OLE对象型 OLE(Obje
17、ct Linking and Embedding)的中文含义是“对象的链接与嵌入”,用来链接或嵌入OLE对象,如:文字、声音、图像、表格等。表中的照片字段应设为OLE对象类型。OLE对象型字段的字段大小不定,最多可达到1GB。OLE对象只能在窗体或报表中用控件显示。不能对OLE对象型字段进行排序、索引或分组。9超链接型 超链接型字段存放超链接地址,如:网址、电子邮件。超链接型字段大小不定。10查阅向导型 查阅向导型字段仍然显示为文本型,所不同的是该字段保存一个值列表,输入数据时从一个下拉式值列表中选择。值列表的内容可以来自表或查询,也可以来自定义的一组固定不变的值。例如,将“性别”字段设为查阅
18、向导型以后,只要在“男”和“女”2个值中选择一个即可。查阅向导型字段大小不定。2.1.5 设置字段属性 字段属性是字段特征值的集合,分为常规属性和查阅属性2种,用来控制字段的操作方式和显示方式。不同字段类型有不同的属性集合。1,输入掩码:字段的输入模板 字符字符含义0在掩码字符位置必须输入数字。例如,掩码:(00)00-000,示例:(12)55-2349在掩码字符位置输入数字或空格,保存数据时保留空格位置。例如,掩码:(99)99-999,示例:(12)55-234,()55-234#在掩码字符位置输入数字、空格、加号或减号。例如,掩码:#,示例:1+,9+999L在掩码字符位置必须输入英文
19、字母,大小写均可。例如,掩码:LLLL,示例:aaaa,AaAa?在掩码字符位置输入英文字母或空格,字母大小写均可。例如,掩码:?,示例:a a,AaA在掩码字符位置必须输入英文字母或数字,字母大小写均可。例如,掩码:(00)AA-A,示例:(12)55-a,(80)AB-4a在掩码字符位置输入英文字母、数字或空格,字母大小写均可。例如,掩码:aaaa,示例:5a5b,A 4&在掩码字符位置必须输入空格或任意字符。例如,掩码:&,示例:$5A%C在掩码字符位置输入空格或任意字符。例如,掩码:CCCC,示例:$5A%.,:;-/句点、逗号、冒号、分号、减号、正斜线,用来设置小数点、千位、日期时间
20、分隔符。将其后所有字母转换为小写。例如,掩码:LL将其后所有字母转换为大写。例如,掩码:LLLL,输入aaaa,显示aaAA密码以*号显示输入的字符。有效性规则是一个条件,用来为字段的值定义数据范围和数值要求。如果输入的数据不符合有效性规则,将给出提示信息,并且光标停在原处,直到输入正确数据为止。注意,有效性规则的设置不能与默认值冲突。例如:性别字段只能输入文字男或女,用:男 or 女。例如:年龄字段的范围是大于0,用:0。例如:出生日期的字段范围是2001年,用:=#2001-1-1#and 、=、=10 and=70,true,false)在“录取否”对应的计算文本框表达式:=iif(fx
21、k=-1,录取,未录取)5.3.3 用复选框控件在报表中添加新字段 显示结果:5.2.4 5.2.4 在报表中显示非记录源字段在报表中显示非记录源字段 用 DLookup 函数在报表中显示非记录源(又称外部表)中的字段值,外部表与当前表之间无须建立关系,在函数中以共有字段作为连接条件即可。DLookup(外部表字段名,外部表名,条件表达式)说明:(1)函数中的各部分要用引号括起来。(2)条件表达式格式:外部表字段名=&当前表字段名&注意其中单、双引号和&号的使用。(3)如果有多个字段符合条件表达式,DLookup 函数只返回第 一个字段值。例:当前表是“员工”表,外部表是“部门”表,用 DLo
22、okup 函数显示外部表中“名称”字段的值。计算出生年:=Year(Now()-年龄 计算部门:=dlookup(名称,部门,部门编号=&所属部门&)显示结果:在报表页脚节或组页脚节可以使用函数对整个报表或组做统计操作,常用的统计函数有:count(统计个数)、sum(求和)、avg(求平均值)。5.2.5 统计报表数据 例:用count、sum、avg函数统计报表数据 计算总人数:=count(姓名)计算平均工资:=avg(工资)计算奖金合计:=sum(奖金)说明:“格式”属性选“固定”,值显示2位小数。报表布局:显示结果:5.3 数据排序与分组数据排序与分组 “视图”菜单“排序与分组”在左
23、边列中选字段在右边列中选排序方式。如果对多个字段排序,则选取字段的顺序就是排序次序。首先对第一个字段排序,当第一个字段的值相同时,再对第二个字段排序。5.3.1 数据排序 5.3.2 数据分组 “视图”菜单“排序与分组”分组字段选“姓名”组页眉选“是”组页脚选“是”,设计视图中显示组页眉和组页脚。例:按照“姓名”字段分组,显示所选课程的名称、成 绩,计算平均成绩。在组页脚添加计算字段。表达式:=avg(成绩)显示结果:主/子报表类似于主/子窗体,是对建立了关系的两个表的操作。两个表都已单独建立了报表,然后将子表对应的报表插入到主表对应的报表中。主报表可以包含一个或多个子报表,也可以包含一个或多
24、个子窗体。5.4 主主/子报表与标签报表子报表与标签报表5.4.1 主子报表例:用主/子报表的方法显示学生表与公共课成绩表(1)将“学生”表与“公共课成绩”表建立关系并实施参照完整性,并分别建立报表。(2)将子报表拖入主报表的设计视图,调整大小。显示结果:5.4.2 标签报表标签报表是一种多列报表,在一页中显示多列数据。例:制作可以显示4列的标签报表。(1)添加字段,用矩形控件修饰。“文件”菜单“页面设置”“列”选项卡中列数选4行间距和列间距都选0宽度3.5cm高度2.7cm去掉“与主体相同”的对勾。显示结果:ACCESS实例教程 页的操作(第页的操作(第6章)章)1,使用页控件2,建立数据访
25、问页3,编辑数据访问页本章要点:本章要点:6.1 6.1 认识页对象认识页对象 页对象是直接连接Access数据库数据的Web页,交互式的,可以通过网络对数据进行实时访问,并能查看、编辑、更新数据。所以,数据访问页具有网上数据库功能。页在Access中设计,但页本身是存贮在Access之外的独立文件,文件扩展名为.htm或.html,数据库中保留的是指向该文件的快捷方式。正是由于数据访问页有这一特性,所以,使用数据访问页的用户不必安装Access也能访问数据库数据。页有3种视图:设计视图、页面视图、网页预览。6.1.2 页的视图 设计视图用来创建和编辑页结构,放置页的控件。页面视图用来查看页的
26、输出效果。网页预览用浏览器查看页的设计,带有超链接的页只能用网页预览查看效果。6.1.2 页的设计视图 页的设计视图是创建与编辑数据访问页的一个可视化集成界面,所有与字段有关的控件都要放在网格区域中。6.1.3 页的工具箱 页的工具箱有一些专用于网页的工具和专用于网上浏览数据的工具。(1)滚动文字按钮,在页中插入一段移动文本。(2)展开按钮,在页中插入一个展开/收缩按钮。(3)记录浏览按钮,在页中插入一个工具栏,包含记录浏览的各种按钮。(4)超链接按钮,在页中插入一个包含超链接地址的文本,单击文本打开超链接指向的目标端点。(5)图像超链接按钮,在页中插入一个包含超链接地址的图片,单击图片打开超
27、链接指向的目标端点。(6)影片按钮,在页中插入一个影片控件,并指定影片。6.1.4 页的属性窗口 页的属性窗口与窗体、报表的属性窗口稍有不同,属性窗口中没有事件选项卡。6.1.5 页的字段列表 页的字段列表框与窗体、报表的字段列表框也有所不同,页的字段列表框显示数据库中所有表和查询,当前数据源处于展开状态,显示所有字段。其他数据源则处于折叠状态。例:建立一个数据访问页(1)在库窗口中单击页对象单击“新建”按钮选“设计视图”数据源选“学生”表单击“确定”按钮。(2)从字段列表框向设计窗口拖入4个字段:学号、姓名、性别、籍贯将控件纵向排整齐。(3)转到“页面视图”查看显示结果。6.2.1 添加滚动
28、文字 6.2 在页中使用控件在页中使用控件 单击工具箱的“滚动文字”控件在窗体中画一个矩形写文字在常用工具栏中设字体、字号。6.2.2 添加命令按钮 与字段有关的按钮添加在网格区域,添加方法与窗体中的命令按钮相同。6.3 页的修饰页的修饰6.3.1 添加背景色 选中一个区域“格式”菜单“背景”“颜色”在显示的颜色盒中选取一种颜色,该区域显示指定颜色。6.3.2 添加背景图片 选中一个区域“格式”菜单“背景”“图片”在显示的对话框中选取一个图片文件,该图片就成为页的背景图片。6.3.3 使用主题 主题是将字体、背景图像等元素进行统一设计、统一配色的方案集合。使用主题就是使用系统提供的设计与配色方
29、案,快速创建具有专业水平的数据访问页。“格式”菜单“主题”在对话框中选主题“确定”。转到页面视图,按主题显示页。ACCESS实例教程 宏的操作(第宏的操作(第7章)章)1,建立宏2,建立宏组3,建立条件宏4,将宏附加给控件本章要点:本章要点:7.1 7.1 认识宏对象认识宏对象 宏是一系列操作的集合,每个操作都自动完成特定功能,Access提供宏对象的目的是让操作能自动执行。宏对象有3种类型:宏、宏组、条件宏。其中,宏是操作的集合,宏组是宏的集合,条件宏是带条件的操作序列,只在条件成立时才执行。宏对象在宏窗口中建立。宏窗口分为上、下两部分,上边是设计网格,用来添加宏操作。下边是操作参数表,用来
30、设置每个宏操作的参数。宏操作不同,相对应的参数表也不同。7.1.1 宏窗口 7.1.2 7.1.2 常用宏操作常用宏操作 (1)打开数据库中的对象 OpenTable命令,打开数据表。OpenForm命令,打开窗体。OpenReport命令,打开报表。OpenQuery命令,打开查询。(2)关闭数据库对象和退出Access Close命令,关闭指定的数据库对象。Quit 命令,退出Access。(3)设置值和刷新值 SetValue命令,设置属性值。Requery命令,刷新控件数据。(4)窗口操作 Maximize命令,最大化窗口。Minimize命令,最小化窗口。Restore命令,将最大化
31、或最小化窗口恢复至初始大小。(5)运行操作 RunCommand命令,运行Access指定的内置语句。RunSQL命令,运行指定的SQL语句。RunMacro命令,运行指定的宏。(6)提示操作 Beep命令,使计算机发出“嘟嘟”声。MsgBox命令,显示消息框。7.1.3 宏的几个重要按钮 宏名:在宏窗口设计网格中显示“宏名”列。条件:在宏窗口设计网格中显示“条件”列。插入行:在当前宏操作行上方插入一个空行。删除行:将当前的宏操作行删除。运行:运行宏,如果是宏组,只运行宏组中的第一个宏。单步:单步运行宏。7.1.4 将宏转换为VBA代码 选中一个宏“工具”菜单“宏”“将宏转换为Visual B
32、asic代码”。7.2 创建宏对象创建宏对象7.2.1 创建宏例:建立宏。打开一个表和一个查询,先关闭查询,再 关闭表,用消息框提示。(1)新建宏(2)第1个操作选OpenTable表名称选“教师”。(3)第2个操作选OpenQuery查询名称选“教师人数”。(4)第3个操作选MsgBox消息框输入“关闭教师人数查询吗?”标题输入“提示信息”。(5)第4个操作选Close对象类型选“查询”对象名称选“教师人数”。(6)类似方法再加入一个MsgBox操作,提示“关闭教师表吗?”,加入一个Close操作,关闭教师表。(7)“运行”菜单“运行”,系统按顺序自动运行宏里面的6个操作。7.2.2 创建宏
33、组 例:建立并运行宏组(1)新建并保存宏“视图”菜单“宏名”,窗口显示“宏名”列。(2)在宏组中依次给两个宏起名并写入操作。(3)“工具”菜单“宏”“运行宏”在对话框中输入“宏组练习.a2”单击“确定”按钮,宏组中的第2个宏被执行。(4)对宏组用“运行”命令,只运行宏组中的第1个宏。也可以用上述方法运行宏组中第1个宏。条件宏根据条件结果的“真”或“假”,选择执行或不执行相应操作。当表达式的值为“真”时,运行对应的操作,当表达式值为“假”时,忽略对应的操作。如果相邻操作的条件表达式相同,条件可以用省略号()代替。省略号输入3个西文句点即可。7.2.3 创建条件宏(1)引用窗体控件的语法为:For
34、ms!窗体名!控件名 或 Forms!窗体名!控件名(2)引用报表控件的语法为:Reports!报表名!控件名 或 Reports!报表名!控件名例:简单条件的条件宏(1)在窗体中生成复选框控件名称为fxk。(2)新建宏以“条件宏”为名保存“视图”菜单“条件”,宏窗口中显示“条件”列。(3)在条件列第1行写条件表达式:Forms!ct!fxk 操作选MsgBox消息写“你选了我了!”(4)第2行条件相同操作选Beep。(5)第3行条件相同操作选MsgBox消息写“谢谢!”。(6)第4行写条件:not Forms!ct!fxk 操作选MsgBox消息写“你没有选我!”。(7)第5行条件相同操作选
35、Beep。(8)第6行条件相同操作选MsgBox消息写“再见!”。(9)用设计视图打开ct窗体选取控件fxk属性窗口单击“事件”卡在“更新后”属性框中选“条件宏”。显示结果:例:复杂条件的条件宏(1)新建窗体ct1 生成2个复选框控件fxk1和fxk2附加标签的标题 分别为“唱歌”和“跳舞”。(2)生成命令按钮控件c1标题为“确定”。(3)新建宏“条件宏2”显示“条件”列。(4)条件1:Forms!ct1!fxk1 and Forms!ct1!fxk2 操作选MsgBox消息写“又唱歌又跳舞”。(5)条件2:Forms!ct1!fxk1 and not Forms!ct1!fxk2 操作选Ms
36、gBox消息写“只唱歌不跳舞”。(6)条件3:not Forms!ct1!fxk1 and Forms!ct1!fxk2 操作选MsgBox消息写“不唱歌只跳舞”。(7)条件4:not Forms!ct1!fxk1 and not Forms!ct1!fxk2 操作选MsgBox消息写“不唱歌不跳舞”。(8)ct1窗体中选取命令按钮属性窗口单击“事件”卡 在“单击”属性框中选“条件宏2”。执行结果:7.2.4 自动运行宏 名为autoexec的宏称为“自动运行宏”,打开数据库的同时会自动执行“自动运行宏”中包含的操作。自动运行宏的名字autoexec是专用的。如果打开数据库时不想运行“自动运行
37、宏”,可以在打开数据库时按住shift键,这样就能取消autoexec宏的自动运行。7.3 宏的编辑与调试宏的编辑与调试7.3.1 宏的编辑1更改宏组中的宏名和更改条件表达式直接在宏名或条件表达式处输入新内容即可。2更换宏的操作单击操作框的向下箭头,在系统提供的52个操作中重新选一个。3更换操作的参数单击参数框的向下按钮,在系统提供的参数项中重新选一个。4插入行与删除行在设计网格中选定一行,单击插入行按钮,在当前行上方插入一个空行。选定一行,单击删除行按钮,删除当前行。7.3.2 宏的调试系统为宏提供了单步执行的调试工具,操作步骤如下:(1)打开要调试的宏。(2)按下单步运行按钮,或者打开“运
38、行”菜单选“单步”,使运行进入单步步跟综状态。(3)单击运行按钮,或者打开“运行”菜单选“运行”,系统显示“单步执行宏”对话框。(4)单击对话框中“单步执行”按钮,依次执行宏的操作,每步操作完毕后都会暂停,显示操作信息或操作结果。(5)单击对话框中“继续”按钮,执行宏的下一个操作。(6)单击对话框中“停止”按钮,停止宏的执行,关闭对话框。(7)如果宏操作有问题,显示“操作”失败对话框。(8)用组合键Ctrl+Break可以在宏的执行过程中暂停宏的执行。ACCESS实例教程 模块的操作(第模块的操作(第8章)章)1,模块的基本概念2,VBA程序设计基础3,VBA函数的使用4,模块的建立与使用5,
39、过程与参数传递本章要点:本章要点:8.1 8.1 认识模块对象认识模块对象 模块是由声明、语句和过程组成的集合,以VBA(Visual Basic for Application)语言编写,作为一个已命名的单元存储在一起。模块有2种类型:类模块和标准模块。使用模块可以在实际开发中实现较为复杂的功能。(1)模块 模块由一个或多个过程组成,每个过程实现一个或几个功能。模块的执行通过特定事件激发相应的事件过程实现。(2)事件过程 事件过程是一组代码,用于响应窗体事件或报表事件。(3)类模块 类模块是包含代码和数据的集合,可以看作是没有物理表示的控件,总是与某一特定的窗体或报表相关联。窗体模块和报表模
40、块都属于类模块。(4)标准模块 标准模块是代码的集合,包含的过程不与任何其他对象相关联,是数据库对象使用的公共过程,保存在数据库窗口中。8.1.1 模块的基本概念 8.1.2 启动Access的编程界面 Access的编程界面称为VBE(Visual Basic Editor),是Microsoft Office所有组件公用的程序编辑系统。方法1:在窗体或报表设计视图中选控件单击标准工具栏的“生成器”按钮在“选择生成器”对话框中选择“代码生成器”。方法2:右击窗体或报表设计视图中控件快捷菜单中选“事件生成器”“选择生成器”对话框中选择代码生成器”。8.1.3 VBE窗口 编写模块对象的代码在代
41、码窗口进行。(1)窗口顶部有2个组合框,左边对象框显示所有对象名称,右边过程框显示当前对象能识别的所有事件名称。选定一个对象,再选定一个事件,系统会自动生成相应事件过程的起始行与结束行,只须在两行中间添加过程代码即可。“通用”过程可以被所有控件调用。某控件的过程只在关联事件中有效。(2)窗口中央代码区有声明区和过程区,声明区中声明模块使用的变量,过程区显示一个或多个过程,之间用一条灰线分隔。(3)窗口底部有2个按钮,单击“过程视图”按钮,只显示当前过程。单击右边“完整的模块视图”按钮,窗口显示全部过程。8.1.4 标准工具栏 例:一个类模块 例:一个标准模块 8.1.7 使用提示与帮助 在代码
42、窗口输入代码时,系统会自动显示提示信息,包括关键字列表、属性列表、过程参数列表等,在列表中选取一项后双击鼠标,所选值会自动添加到当前光标处。8.2 VBA程序设计基础程序设计基础8.2.1 面向对象的程序设计的基本概念(1)对象 在自然界中,一个对象就是一个实体,如一辆汽车就是一个对象。在面向对象的程序设计中,对象代表应用程序中的元素,如表、窗体、按钮等。(2)属性 属性是对象的特征。如汽车有颜色和型号属性,按钮有标题和名称属性。对象的类别不同,属性会有所不同。同类别对象的不同实例,属性也有差异。例如,同是命令按钮,名称属性不允许相同。(3)事件 事件是对象能够识别的动作。如按钮可以识别单击事
43、件、双击事件等。在类模块每一个过程的开始行,都显示对象名和事件名。如:Private Sub c1_Click()。(4)方法 方法是对象能够执行的动作,决定了对象能完成什么事。不同对象有不同的方法。如close方法能关闭一个窗体。(5)集合 集合由许多与对象有关的键和值组成,其中的键和值是配对的。如一本书是一个对象,书的页码是键,页码对应的内容是值。所有配对的页码和内容组成了书对象的集合。(6)过程 过程是由代码组成的单元,包含一系列计算语句和执行语句。每一个过程都有名字,过程名不能与所在模块的模块名相同。过程有两种类型:sub过程(无返回值),function过程(有返回值)。例:动态设置
44、控件属性(1)在窗体中建1个文本框名称为t1。(2)在窗体中建1个标签名称为b1标题为“新年好!”。(3)在窗体中建3个命令按钮名称分别为c1、c2、c3标题 分别为“红色”、“绿色”、“蓝色”。(4)设置各按钮的前景色,在属性窗口可查看颜色值。(5)c1的click事件代码:t1.BackColor=255 b1.ForeColor=255(6)c2的click事件代码:t1.BackColor=33792 b1.ForeColor=33792(7)c3的click事件代码:t1.BackColor=16711680 b1.ForeColor=16711680 执行结果:Docmd是Acce
45、ss的一个特殊对象,用来调用内置方法,在程序中实现对Access的操作,诸如打开窗口、关闭窗体、打开报表、关闭报表等。DoCmd 对象的大多数方法都有参数,有些参数是必需的,有些则是可选的。若省略可选参数,参数将采用默认值。8.2.2 Docmd对象(1)用DoCmd 对象打开窗体 格式:DoCmd.OpenForm 窗体名 功能:用默认形式打开指定窗体。例如:DoCmd.OpenForm 文本框练习(2)用DoCmd 对象关闭窗体 格式1:DoCmd.Close acForm,窗体名 功能:关闭指定窗体。例如:DoCmd.Close acForm,文本框练习 格式2:DoCmd.Close
46、功能:关闭当前窗体。(3)用DoCmd 对象打开报表 格式:DoCmd.OpenReport 报表名,acViewPreview 功能:用预览形式打开指定报表。例如:DoCmd.OpenReport 工资报表,acViewPreview(4)用DoCmd 对象关闭报表 格式1:DoCmd.Close acReport,报表名 功能:关闭指定报表。例如:DoCmd.Close acReport,工资报表 格式2:DoCmd.Close 功能:关闭当前报表。(5)用DoCmd 对象运行宏 格式:DoCmd.RunMacro 宏名 功能:运行指定宏。例如:DoCmd.RunMacro 宏1(6)用D
47、oCmd 对象退出Access。格式:DoCmd.Quit 功能:关闭所有Access对象和Access本身。(1)在窗体中建立5个按钮名称分别为c1、c2、c3、c4、c5标题分别为“打开文本框练习窗体”、“关闭文本框练习窗体”、“打开工资报表”、“关闭工资报表”、“退出Access”。例:使用DoCmd对象(2)c1代码:DoCmd.OpenForm 文本框练习(3)c2代码:DoCmd.Close acForm,文本框练习(4)c3代码:DoCmd.OpenReport 工资报表,acViewPreview(5)c4代码:DoCmd.Close acReport,工资报表(6)c5代码:
48、DoCmd.Quit(7)转到窗体视图单击不同按钮执行不同操作。8.2.3 数据类型与数据类型转换 VBA类型符号字段类型取值范围字节数Byte字节0255之间的整数1Integer%整型-3276832767之间的整数2Long&长整型-21474836482147483647之间的整数4Single!单精度负数:-3.402823E38-1.401298E-45正数:1.401298E-453.402823E384Double#双精度负数:-1.79769313486232E308 -4.94065645841247E-324正数:4.94065645841247E-324 1.79769
49、313486232E3088Currency货币-922337203685477.5808922337203685477.58078String$文本065535个字符Boolean是/否true或false1Date日期/时间January 1,100到December 31,99998Variant无(1)标准数据类型(2)数据类型转换函数函数转换后类型说明CByte(x)Bytex取值范围同Byte,小数部分四舍五入,超出范围显示“溢出”CInt(x)Integerx取值范围同Integer,小数部分四舍五入CLng(x)Longx取值范围同Long,小数部分四舍五入CSng(x)Sin
50、glex取值范围同SingleCDblDoublex取值范围同DoubleCCurCurrencyx取值范围同CurrencyCBool(x)Booleanx取值范围是任何有效数字或字串CDate(x)Datex取值范围是任何有效日期表达式CStr(x)String无CVar(x)Variantx如果是数值范围同Double,否则,与String相同 例:在立即窗口中计算函数值(1)在VBE界面“视图”菜单“立即窗口”,显示立即窗口。(2)输入表达式x=“true”回车输入表达式y=“false”回车输入表达式?x+y回车,显示结果为:truefalse。(3)输入表达式?cbool(x)+c