第5章报表操作_第1页
第5章报表操作_第2页
第5章报表操作_第3页
第5章报表操作_第4页
第5章报表操作_第5页
已阅读5页,还剩112页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、123456学习目标:学习目标:了解报表的功能与类型;了解报表的功能与类型;能够使用向导创建报表并对报表能够使用向导创建报表并对报表进行再设计;进行再设计;能够对报表中的数据进行排序与能够对报表中的数据进行排序与分组;分组;能在报表进行计算与汇总。能在报表进行计算与汇总。5.1 报表概述5.1.1 报表的功能5.1.2 报表的结构5.1.3 报表的视图5.1.4 报表的类型5.1.1 报表的功能 报表是报表是AccessAccess用来打印数据库信息的对用来打印数据库信息的对象。它的象。它的主要功能主要功能就是根据需要将数据库中就是根据需要将数据库中的有关数据提取出来进行整理、分类、汇总的有关

2、数据提取出来进行整理、分类、汇总和统计,并以要求的格式打印出来。报表可和统计,并以要求的格式打印出来。报表可以打印输出表、查询或窗体中的数据。以打印输出表、查询或窗体中的数据。 报表报表和和窗体窗体这两种对象有着本质的区别:这两种对象有着本质的区别:报表只能报表只能查看查看数据,而窗体可以数据,而窗体可以改变改变数据源数据源中的数据。中的数据。 返回5.1.2 报表的结构报表的结构和窗体类似,也由节组成。报表可以报表的结构和窗体类似,也由节组成。报表可以包含这些节:主体、报表页眉、报表页脚、页面包含这些节:主体、报表页眉、报表页脚、页面页眉、页面页脚、组页眉和组页脚。页眉、页面页脚、组页眉和组

3、页脚。返回主体主体页面页眉页面页眉报表页脚报表页脚报表页眉报表页眉页面页脚页面页脚分组页眉分组页眉 报表页眉报表页眉/ /页脚、页面页眉页脚、页面页眉/ /页脚都可以通过页脚都可以通过“视视图图”菜单选定显示或不显示。而组页眉和组页脚菜单选定显示或不显示。而组页眉和组页脚只有在创建分组报表时根据需要显示。一个报表只有在创建分组报表时根据需要显示。一个报表通常包含多页,通常包含多页,整个报表只有一个报表页眉和一整个报表只有一个报表页眉和一个报表页脚个报表页脚,通常作为整个报表的封面和封底。,通常作为整个报表的封面和封底。 每一页由主体、页面页眉和页面页脚组成。每一页由主体、页面页眉和页面页脚组成

4、。 组页眉和组页脚数随有无分组和分组的层数多少组页眉和组页脚数随有无分组和分组的层数多少而定,其名称也随具体分组字段而定。而定,其名称也随具体分组字段而定。 报表中,报表中,主体是不可或缺的主体是不可或缺的。绝大多数报表都有。绝大多数报表都有页面页眉和页面页脚。简单的报表可以没有报表页面页眉和页面页脚。简单的报表可以没有报表页眉和报表页脚。不分组的报表没有组页眉和组页眉和报表页脚。不分组的报表没有组页眉和组页脚。页脚。 主体是报表的主要组成部分,用来显示报表数主体是报表的主要组成部分,用来显示报表数据源中的记录。据源中的记录。 报表页眉是报表的首部,报表页眉是报表的首部,用来显示报表标题用来显

5、示报表标题、报表徽标、单位或部门名称、日期和说明性文报表徽标、单位或部门名称、日期和说明性文字等信息。字等信息。 报表页脚是报表的尾部,报表页脚是报表的尾部,用来显示整个报表的用来显示整个报表的统计数据统计数据、日期和说明性文字等信息。、日期和说明性文字等信息。 页面页眉在每一页的顶部,用来显示列标题、页面页眉在每一页的顶部,用来显示列标题、页码、日期等信息。页码、日期等信息。 页面页脚在每一页的底部,用来显示页面摘要、页码、日期和本页汇总数据等信息。 组页眉在组的明细部分的最前面,用来显示分组字段等分组信息。 组页脚在组的明细部分的最后面,用来显示分组统计数据等分组信息5.1.3 报表的视图

6、AccessAccess数据库的报表有数据库的报表有3 3种视图:种视图:设计视图设计视图打印预览视图打印预览视图版面预览视图版面预览视图返回“设计”视图 在“数据库”窗口选定某个报表后单击窗口上部的“设计”按钮,就打开了报表的“设计”视图。 “设计”视图用来创建或再设计报表。“打印预览”视图 “打印预览”视图用来查看将在报表的每一页上显示的数据。 在“数据库”窗口选定某个报表后单击窗口上部的“预览”按钮,就打开了报表的“打印预览”视图。“版面预览”视图“版面预览版面预览”视图用来查看报表的版面设置,其视图用来查看报表的版面设置,其中只包括报表中部分数据,所以运行速度比打印中只包括报表中部分数

7、据,所以运行速度比打印预览要快。预览要快。单击工具栏中的单击工具栏中的“视图视图”按钮可以实现报表的按钮可以实现报表的“设计设计”视图、视图、“打印预览打印预览”视图间的直接转换。视图间的直接转换。但要转换为但要转换为“版面预览版面预览”视图则只能单击工具栏视图则只能单击工具栏中中“视图视图”按钮右侧的下拉箭头后选取按钮右侧的下拉箭头后选取. .返回节5.1.4 报表的类型在Access中,常用的报表可分为以下几种类型: 明细报表; 汇总报表; 交叉列表报表; 图表式报表; 标签式报表。返回节1、明细报表2、汇总报表汇总报表显示报表数据源中相关记录的汇总数据 。 图中所显示的报表中只包含按班级

8、汇总的最高分和平均成绩。这图中所显示的报表中只包含按班级汇总的最高分和平均成绩。这个报表是按个报表是按“班级名称班级名称”分组的,在组页眉和页脚部分放置了汇总控分组的,在组页眉和页脚部分放置了汇总控件。该报表隐藏了主体部分的控件。件。该报表隐藏了主体部分的控件。3. 3. 交叉表报表交叉表报表 交叉列表报表是基于交叉表查询的报表,其数据的组织形式和交叉表一样。 图中给出的图中给出的“学生选课交叉列表学生选课交叉列表”报表的数据源是报表的数据源是“学生选课交叉表查询学生选课交叉表查询”。4. 图表式报表 图表式报表将报表数据源中的数据以图形方图表式报表将报表数据源中的数据以图形方式形象直观地表示

9、出来。式形象直观地表示出来。 上图为学生课程成绩按班级汇总的平均上图为学生课程成绩按班级汇总的平均成绩图表。成绩图表。 图表中的水平坐标按图表中的水平坐标按“课程名称课程名称”分类,分类,图表数据是按班级汇总的课程平均成绩。此图表数据是按班级汇总的课程平均成绩。此图表清楚地显示每一个班各门课程成绩的相图表清楚地显示每一个班各门课程成绩的相对好坏。对好坏。 5. 标签式报表 标签式报表就是将报表数据源中少量数据以标签的方式组织在一起。下图就是一个邮政标签实例。5.2 创建报表 在“数据库”窗口选中报表对象,然后单击“新建”按钮就打开了“新建报表”对话框。返回本节内容:本节内容:5.2.1 自动创

10、建报表5.2.2 使用报表向导创建报表5.2.3 使用向导创建标签5.2.4 使用向导创建图表报表5.2.1 自动创建报表案例1:以“学生”表为数据源建立名为“学生情况表格式1”的报表。返回节操作步骤:操作步骤: (1) (1) 打开打开“学生管理学生管理”数据库,选报表对象,单击数据库,选报表对象,单击“新建新建”按钮;按钮; (2) (2) 在打开的在打开的“新建报表新建报表”对话框中选择对话框中选择“自动创自动创建报表:表格式建报表:表格式”; (3) (3) 选定数据源;本题是选定数据源;本题是“学生学生”表;单击表;单击“确定确定”按钮。按钮。结果:结果:练习1:以“学生(有相片)”

11、表为数据源自动建立名为“学生情况纵栏式”的报表。返回节5.2.2 使用报表向导创建报表报表的特点是数据多、布局要求高,如果完全靠报表的特点是数据多、布局要求高,如果完全靠手工设定每一个控件会十分繁杂而枯燥。利用自手工设定每一个控件会十分繁杂而枯燥。利用自动报表功能创建报表虽然快捷,但格式单调。使动报表功能创建报表虽然快捷,但格式单调。使用向导创建报能避免上述两种方法的不足之处,用向导创建报能避免上述两种方法的不足之处,是创建报表最主要的方法是创建报表最主要的方法。使用向导创建报表,可以通过系统提供的一系列使用向导创建报表,可以通过系统提供的一系列对话框,输入自己的设计思想,依靠系统自动完对话框

12、,输入自己的设计思想,依靠系统自动完成报表的设计。如果系统生成的报表不够理想,成报表的设计。如果系统生成的报表不够理想,还可以在还可以在“设计设计”视图视图中进行中进行再设计再设计。案例2:以“学生”表为数据源使用向导创建名为“学生情况纵栏表1”的报表,包括所有字段。操作说明:在“报表向导”对话框之三中(下页图)设置排序字段,最多可以按4个字段排序,既可升序也可降序(单击“升序”或“降序”按钮切换);本题设置“学号”为唯一的排序字段,以升序排序。结果:结果:【案例案例3 3 】 以以“学生情况学生情况”表为数据源使用向导创表为数据源使用向导创建名为建名为“向导创建学生情况向导创建学生情况1”1

13、”的报表,包括所有字的报表,包括所有字段,以段,以“出生日期出生日期”的的“年年”为唯一分组字段,按为唯一分组字段,按“出生日期出生日期”排序,布局方式为排序,布局方式为“分级显示分级显示1”1”。操作说明:(1) 在“报表向导”对话框之二(右图)中确定是否添加分组级别;如果是多级分组,还可以对分组字段的优先级进行调整;本题以“出生日期的年份”作为唯一的分组字段 。(2) 在打开的对话框之三中设置排序字段 。(3) 在“报表向导”对话框之四(下图)中设置报表的布局方式;本题在“布局”选项组中选择“分级显示1”选项,其它组取默认设置 。关于使用向导创建报表的几点说明:关于使用向导创建报表的几点说

14、明:(1) 案例2与案例3最大的不同是:前者没有分组,后者有分组。因此导致了“报表向导”对话框之四中布局的选项不同。在没有分组的情况下,报表可以选择的布局有纵栏表、表格、两端对齐3种。在有分组的情况下,报表可以选择的布局是另外6种。(2) 对话框之二中,按钮和按钮分别用来添加和删除分组字段(双击字段名也行)。上箭头按钮和下箭头按钮用来对分组字段的优先级进行调整。在这个对话框中,单击“分组选项”按钮可以对分组字段的“分组间隔”属性进行设置。“分组间隔”属性会根据分组字段的不同数据类型给出不同的选项。对文本型字段,分组间隔有“普通”、“第一个字母”等选项。“普通”选项表示按整个字段值进行分组。如学

15、号有“990101”和“990105”等,如果想按“99”分组,则应选择分组间隔中的“二个首写字母”,如下页图所示。(3) 因为报表所基于的查询可能设定了排序,所以最好在第(2)步的对话框之三中为报表设定排序,用以代替原来的排序。(4) 第(2)步的对话框之三中还可以单击“汇总选项”,打开“汇总选项”对话框(下页图)对可汇总的字段选择汇总项。5.2.3 使用向导创建标签 标签以卡片式的小区域表示一些少量数据,通常用于名片、地址和各种标签。 案例案例4 4 以“教学”数据库中的“学生”表为数据源,建立一个名为“学生信封地址”的标签式报表。返回节操作说明:操作说明:(1)在打开的“标签向导”对话框

16、之一(下图)中指定标签型号、尺寸和标签类型;如果系统预设的尺寸都不符合要求,还可以通过“自定义”按钮来自定义标签的尺寸。(2)在打开的对话框之三(下图)中确定标签的显示内容及布局;标签中的内容可来自左侧的字段值,也可直接添加文字;右侧的“原型标签:”矩形区域好比一个文字编辑器,它反映了标签的显示内容及布局。其中,有的是字段值,无的是直接输入的文字;本题选学号、姓名、性别、电话、地址等字段,并直接输入:中山技师学院等文字;布局如下图所示。案例5 对“教学”数据库,按“性别”来创建图表报表,比较分析男女生的各门课的平均成绩。具体要求是:(1) 图表类型选“三维柱形图”;(2) 以“性别”为横坐标、

17、 “平均成绩”为纵坐标、 “课程名称”为数据序列;(3) 将纵坐标改为平均考试成绩。返回节结果看下页图结果看下页图5.2.4 使用向导创建图表报表后有操作说明操作说明:(1)建立选择查询:从学生、课程、成绩表中)建立选择查询:从学生、课程、成绩表中挑选出性别、学号、课程名、成绩四个字段。挑选出性别、学号、课程名、成绩四个字段。(2) 选择“报表”对象,新建图表式报表,数据源选择上步所建的查询。如图:(3) 在打开的“图表向导”对话框(下图)中选择用于图表的字段(最多6个);本题选性别、课程、成绩。(4)选择三维柱形图。(5) 在打开的对话框之三(下页图)中选择数据在图表中的布局方式;对本题,将

18、“性别”拖放到横坐标位置,将“成绩”拖放到纵坐标位置,数据序列按“课程”排列;双击纵坐标中的“求和成绩”,选取“平均值”,即得到该图所示的“平均值成绩”。(6)命名报表:)命名报表:练习 对“教学”数据库,以“成绩”表为数据源来创建图表报表,比较分析各科的平均成绩。具体要求是:(1) 图表类型选“柱形图”;(2) 以“科目编号”为横坐标、 “平均成绩”为纵坐标返回节5.2.5 5.2.5 使用设计视图创建报表使用设计视图创建报表 虽然可以通过向导或自动功能快速地创建报表,但也可能要利用“设计视图”从空白报表开始设计。利用“设计视图”创建报表有许多技巧,这些技巧对报表的再设计是很有帮助的。下面介

19、绍利用“设计视图”创建报表的基本操作。1、报表设计工具 工具箱、工具箱、“属性属性”窗口、字段列窗口、字段列表都可以通过单击工具栏中对应的按表都可以通过单击工具栏中对应的按钮让其显示或隐藏。钮让其显示或隐藏。“属性属性”窗口窗口工具箱工具箱字段列表字段列表2. 选择报表的记录源 报表可以使用与窗体相同类型的记录源:表、查询、SQL语句等。 显示明细数据的报表可用选择查询作记录源,只显示汇总数据的报表可用有汇总计算的查询作为记录源。(1)(1)在在“新建报表新建报表”对话框中选对话框中选定定“设计视图设计视图”后立即选择后立即选择绑定到报表的数据源。绑定到报表的数据源。(2)(2)如果在如果在“

20、新建报表新建报表”对话框对话框中没有选择数据源,可以在中没有选择数据源,可以在“设计设计”视图中打开视图中打开报表报表“属性属性”窗口窗口,在,在“数据数据”选项卡的选项卡的“记录源记录源”属性框属性框中输入或选择数据源。中输入或选择数据源。3.为报表添加控件为报表添加控件,可以使用字段列表,也可以使用工具箱,操作方法与窗体一样。向报表添加字段时,它的关联标签会同时添加到报表的同一节。如果想创建表格式报表,就需要把关联的标签“剪切”下来,“粘贴”到报表的页面页眉或组页眉中。报表设计还可能需要调整报表外观、设置相关属性、设置排序与分组等,其中的大部分操作与窗体设计相同。案例案例6 在设计视图创建

21、报表:以在设计视图创建报表:以“教师教师”表为记录源,表为记录源,创建表格式报表,具体格式如下图所示:创建表格式报表,具体格式如下图所示:课后上机作业:课后上机作业:课本第139页第1、2、3、4题 报表向导虽然可以快速地创建报表,但这样创建的报表一般还不能达到最终的要求,需要进行再设计。 报表的再设计在“设计”视图中进行,包括对由向导设计的初始报表作各种修改。 报表的“设计”视图与窗体的“设计”视图一样,为报表的再设计提供了一些工具和格式选项。这些工具包括:工具箱、属性窗口、字段列表等。格式选项包括:选择多个控件的方法、网格及对齐网格特性、调整控件大小及对齐控件、控件字体格式调整等。5.3

22、报表的编辑 利用利用“设计设计”视图可以向报表添加各种控件、视图可以向报表添加各种控件、调整控件的大小和位置、设置字体属性,对控调整控件的大小和位置、设置字体属性,对控件进行分组和其它一些设计工作。经过再设计件进行分组和其它一些设计工作。经过再设计的报表不但美观,而且更加方便实用、功能更的报表不但美观,而且更加方便实用、功能更强。强。 少量的报表也可直接使用少量的报表也可直接使用“设计视图设计视图”创建,创建,直接使用直接使用“设计视图设计视图”创建报表和报表的再设创建报表和报表的再设计性质相同。计性质相同。 主要内容主要内容5.3.15.3.1 修改报表的属性修改报表的属性5.3.25.3.

23、2 添加时间和日期添加时间和日期5.3.35.3.3 添加分页符和页码添加分页符和页码5.3.45.3.4 调整报表的外观调整报表的外观返回5.3.1 报表的属性设置 在报表的设计过程中会经常用“属性”窗口对报表的各个元素,包括控件、节和整个报表进行属性设置。单击工具栏上的“属性”按钮或双击控件均可以打开“属性”窗口。在“属性”窗口可以选择窗体上所有的控件进行属性设置。 不同元素的属性项不完全相同。 报表的大部分属性项与窗体是一样的。1. 报表的属性 在“属性”窗口选择报表控件,便可设置报表属性,如图:选择报表报表的格式属性影响报表的外观,它的主要属性项报表的格式属性影响报表的外观,它的主要属

24、性项如下:如下: 标题标题:用来设定用户预览报表时在报表的标题栏:用来设定用户预览报表时在报表的标题栏上显示的文本。上显示的文本。 页面页眉和页面页脚页面页眉和页面页脚:用来确定页面页眉和页面:用来确定页面页眉和页面页脚中的内容是否要打印出来。页脚中的内容是否要打印出来。 宽度宽度:用来确定报表中节的宽度。:用来确定报表中节的宽度。 报表的数据属性用来控制报表的数据来源信息,它的主要属性项如下: 记录源:用来指定报表的数据源。 筛选:允许使用一个特定的筛选条件来打开报表。 打开筛选:用于确定是否应用筛选条件。“是”应用,“否”不应用。只筛选出“计算机”系的教师信息。2. 控件的属性 控件的属性

25、绝大部分在第控件的属性绝大部分在第4 4章已经介绍过。下章已经介绍过。下面介绍报表中的控件所特有的属性。面介绍报表中的控件所特有的属性。 隐藏重复控件隐藏重复控件:用来确定是否隐藏报表内主体节的:用来确定是否隐藏报表内主体节的重复数据值。重复数据值。 例如,在例如,在“成绩表成绩表”中将主体节中的中将主体节中的“学号学号”字段的字段的“隐藏重复控件隐藏重复控件”属性项设为属性项设为“是是”,则显示和打,则显示和打印报表时每个学生仅在他的第印报表时每个学生仅在他的第1 1行显示学号,以后行显示学号,以后的各行都隐藏。这样的报表更清晰。的各行都隐藏。这样的报表更清晰。 可以扩大和可以缩小:用来确定

26、在显示/打印的时候控件是否会根据设置需要自动进行垂直放大和缩小。 运行总和:用来确定是否按记录或按组进行总和计算。不:不对记录进行累加;工作组之上:在同一分组级别对记录进行累加,遇到下一个分组级别时停止;全部之上:对整个报表按指定分组级别对各分组都进行累加。5.3.2 5.3.2 添加时间和日期添加时间和日期 一份完整的报表一般包含有制作时间和日期等信息。l添加系统当前日期和时间:用Now函数或Date函数,操作:添加一个文本框,输入“=Now()”,如果该控件的“格式”属性设置为常规日期和长日期,效果:5.3.3 5.3.3 添加分页符和页码添加分页符和页码 一份精美的报表,不仅要求报表中的

27、数据安排得当,一份精美的报表,不仅要求报表中的数据安排得当,还要求合理地分页并以恰当的方式显示页码。自动还要求合理地分页并以恰当的方式显示页码。自动创建或利用向导创建报表时,创建或利用向导创建报表时,AccessAccess会根据具体的会根据具体的报表内容、页面设置以及报表和节的相关属性的设报表内容、页面设置以及报表和节的相关属性的设置决定分页位置,并以某种方式显示页码。置决定分页位置,并以某种方式显示页码。 分页不应破坏每一页报表的相对完整性和相邻页之分页不应破坏每一页报表的相对完整性和相邻页之间的关系。页码应放在报表的间的关系。页码应放在报表的“页面页眉页面页眉”或或“页页面页脚面页脚”中

28、。中。 需要时可以人为强行分页,也可以更改页码的设置。需要时可以人为强行分页,也可以更改页码的设置。 利用利用“工具箱工具箱”中中“分页符分页符”按钮添加分页按钮添加分页符。需要注意的是:如果在节中间设置分页符,符。需要注意的是:如果在节中间设置分页符,应避免拆分控件中的数据;如果在节的起始处或应避免拆分控件中的数据;如果在节的起始处或结尾处设置分页,可打开节的结尾处设置分页,可打开节的“属性属性”窗口,将窗口,将“强制分页强制分页”属性项设为属性项设为“节前节前”、“节后节后”或或“节前和节后节前和节后”之一。之一。2. 添加页码 在报表在报表“设计设计”视图中打视图中打开相应报表,选择开相

29、应报表,选择“插入插入 页码页码”,打开,打开“页码页码”对对话框话框( (右图右图) );在该对话框;在该对话框中设置页码的格式、位置、中设置页码的格式、位置、对齐方式和首页是否显示对齐方式和首页是否显示页码。页码。【说明说明】自动创建报表和使用向导创建报表时,自动创建报表和使用向导创建报表时,系统会在系统会在“页面页脚页面页脚”自动设置页码。自动设置页码。5.3.4 调整报表的外观 由于报表不但要表达数据间复杂的关系,还要满由于报表不但要表达数据间复杂的关系,还要满足人们的各种习惯,因而报表的格式比窗体更复足人们的各种习惯,因而报表的格式比窗体更复杂、外观比窗体更重要。在报表中对控件位置和

30、杂、外观比窗体更重要。在报表中对控件位置和大小的调整,精度要求更高。大小的调整,精度要求更高。 调整窗体中的控件有多种方法。调整窗体中的控件有多种方法。鼠标、鼠标、“格式格式”菜单、菜单、“格式格式”工具栏和工具栏和“属性属性”窗口窗口都可以用都可以用来完成报表的外观调整。来完成报表的外观调整。1. 调整网格点默认情况下,在默认情况下,在“设计设计”视图中打开窗体或报表视图中打开窗体或报表时,整个背景有许多网格线,水平和竖直间距都是时,整个背景有许多网格线,水平和竖直间距都是1 1厘厘米。打开报表的米。打开报表的“属性属性”窗口窗口,可以看到,可以看到“格式格式”选选项卡(参见下页图)的项卡(

31、参见下页图)的“网格线网格线X X坐标坐标”和和“网格线网格线Y Y坐标坐标”属性项的默认值都是属性项的默认值都是1010。如果在。如果在“格式格式”选项选项卡卡的的“网格线网格线X X坐标坐标”和和“网格线网格线Y Y坐标坐标”属性项分别属性项分别输入比输入比1010小、比小、比1 1大的整数,则会显示网格点。如果分大的整数,则会显示网格点。如果分别输入别输入5 5和和8 8,则水平方向每厘米有,则水平方向每厘米有5 5个网格点,竖直方个网格点,竖直方向每厘米有向每厘米有8 8个网格点。如果输入的数有一个是个网格点。如果输入的数有一个是1 1或者或者1010(包括默认的两个(包括默认的两个1

32、010),则网格点将被隐藏。),则网格点将被隐藏。2. 用对齐网格放置控件 用网格点控制控件的位置是一个好方法,操作简便而且直观。可以根据实际需要调整网格点间的距离。 用网格点控制控件的位置有两种方法。第1种方法是利用“格式”下拉菜单中“对齐”下级菜单的“对齐网格”选项。第2种方法是利用“格式”下拉菜单中的“对齐网格”选项。这是一个单选项。如果选中它,则在以后向报表或窗体添加控件时,添加的控件的4个角都在网格点上。这种设置对此前已经添加的控件不起作用。但是,移动控件时这种设置都起作用。如果在移动控件的同时按下Ctrl键,能够暂取消这种设置的作用。【说明说明】(1 1)在)在“设计设计”视图中打

33、开报表或窗体,通过是视图中打开报表或窗体,通过是否选定否选定“视图视图”下拉菜单中的下拉菜单中的“网格网格”选项,选项,可以决定显示还是隐藏网格点和网格线。可以决定显示还是隐藏网格点和网格线。(2 2)对网格点的设置在下次改变设置前都将起作)对网格点的设置在下次改变设置前都将起作用,即使关闭该报表或窗体后再打开。用,即使关闭该报表或窗体后再打开。(3 3)只要设置了)只要设置了“对齐网格对齐网格”,无论网格点处于,无论网格点处于显示状态还是隐藏状态,网格点都在起作用。显示状态还是隐藏状态,网格点都在起作用。 实际的报表往往要将相同类型的数据集中在一实际的报表往往要将相同类型的数据集中在一起,并

34、按一定的顺序排列。这就要在报表中对起,并按一定的顺序排列。这就要在报表中对记录进行分组与排序。记录进行分组与排序。 只有对记录进行了排序与分组,才能对数据进只有对记录进行了排序与分组,才能对数据进行分类、汇总,这正是报表的最主要的功能。行分类、汇总,这正是报表的最主要的功能。 在报表中,排序只影响记录在报表中的次序,在报表中,排序只影响记录在报表中的次序,分组则为报表添加分组则为报表添加“组页眉组页眉”和和“组页脚组页脚”。 在在“设计设计”视图中打开报表,系统就会显示视图中打开报表,系统就会显示“报报表设计表设计”工具栏。单击工具栏。单击“排序与分组排序与分组”按钮按钮 会弹出会弹出“排序与

35、分组排序与分组”窗口,用以添加、删除和窗口,用以添加、删除和修改报表中数据的排序方式和分组选项。修改报表中数据的排序方式和分组选项。 案例案例3 3的操作步骤表明,使用向导创建报表可以的操作步骤表明,使用向导创建报表可以设置记录的分组和排序方式。但是,这样生成的设置记录的分组和排序方式。但是,这样生成的报表只能按一个或几个字段排序,而不能按字段报表只能按一个或几个字段排序,而不能按字段的表达式排序。但在的表达式排序。但在“排序与分组排序与分组”窗口中可以窗口中可以设置按字段表达式排序。设置按字段表达式排序。5.4.1 在报表中对记录排序虽然报表的数据源可能是按某些字段排序的,但虽然报表的数据源

36、可能是按某些字段排序的,但不一定符合各种报表的要求,而且每个报表都可不一定符合各种报表的要求,而且每个报表都可能对记录的排序有特定的要求。这就需要在报表能对记录的排序有特定的要求。这就需要在报表中设定排序。在报表中设定的排序将覆盖它的数中设定排序。在报表中设定的排序将覆盖它的数据源给出的排序。据源给出的排序。案例7 以“成绩”表为数据源创建报表“成绩表排序”,包含的字段为学号、课程编号、成绩等字段。要求该报表中每位同学的四科成绩按降序排序。(可以理解为:按“学号”升序、“成绩”降序排序。)使用“报表向导”创建“学生课程成绩表_排序”报表,不设置任何排序然后在报表中利用“排序与分组”窗口为记录设

37、置排序: (1)切换到“设计”视图,单击“排序与分组”按钮,或选择“视图排序与分组”,打开“排序与分组”窗口,如下页图所示;(2)在对话框中进行如图的设置,关闭对话框。(3)修改报表标题。切换到“打印预览”视图,结果如图所示:每人的成绩均为降序(1)上述操作接受了系统默认的“升序”。如果需要,可在“排序次序”的下拉列表中选择“降序”。(2)如果有多项排序,第1行最优先,第2行次之,余类推。(3)“排序与分组”窗口的“字段/表达式”行是可以输入表达式的。(4)本题不考虑分组,在“排序与分组”窗口的“组属性”框全取默认值。 5.4.2 记录分组 一个一个组是相关记录组成的集合组是相关记录组成的集合

38、。报表中的记录分。报表中的记录分组后,相关的记录将集中在一起,还可以为每个组后,相关的记录将集中在一起,还可以为每个组设置要显示的说明文字和汇总数据。这样就提组设置要显示的说明文字和汇总数据。这样就提高了报表的可读性和信息的利用率。报表的分组高了报表的可读性和信息的利用率。报表的分组可以嵌套,最多嵌套可以嵌套,最多嵌套1010层。层。 记录的记录的分组必须建立在排序的基础上分组必须建立在排序的基础上。但是,设。但是,设置了排序的字段不一定按其分组。置了排序的字段不一定按其分组。 对记录设置分组就是通过设置排序字段的对记录设置分组就是通过设置排序字段的“组页组页眉眉”和和/ /或或“组页脚组页脚

39、”的属性来实现的。的属性来实现的。案例案例8 8 将例将例7 7中的中的“成绩表成绩表-排序排序”报表复制为报表复制为“成绩成绩表表-分组分组”报表,并在其中添加分组,具体要求是:报表,并在其中添加分组,具体要求是:(1)(1)为报表添加为报表添加“年级年级”(学号的前(学号的前2 2位数字表示年级)位数字表示年级)分组,在分组,在“年级年级”分组中嵌套分组中嵌套“课程编号课程编号”分组;分组;(2)(2)在在“年级年级”和和“课程编号课程编号”组页眉中分别添加组页眉中分别添加“年年级:级:”和和“课程编号:课程编号:”字段及相关文字;字段及相关文字;(3)(3)各组记录按各组记录按“学号学号

40、”升序排列;升序排列;(4)(4)在每组页脚添加计算字段:计算各科的年级平均分。在每组页脚添加计算字段:计算各科的年级平均分。效果如右图所示:(1) (1) 在在“数据库数据库”窗口的报表对象中,选择窗口的报表对象中,选择“成成绩表绩表- -排序排序”,单击工具栏中,单击工具栏中“复制复制”按钮,再按钮,再单击工具栏中单击工具栏中“粘贴粘贴”按钮,在对话框中输入:按钮,在对话框中输入:成绩表成绩表- -分组分组。(2) (2) 在在“设计设计”视图中打开视图中打开“成绩表成绩表-分组分组”报报表,并打开表,并打开“排序与分组排序与分组”窗口。窗口。(3) (3) 在在“排序与分组排序与分组”窗

41、口中单击窗口中单击“字段字段/ /表达式表达式”行行中的中的“学号学号”,通过下拉列表将,通过下拉列表将“组属性组属性”中的中的“组组页眉页眉”和和“组页脚组页脚”的属性值都改为的属性值都改为“是是”;设置各;设置各属性如下图所示。此时报表中就添加了两个节:属性如下图所示。此时报表中就添加了两个节:“学学号页眉号页眉”和和“学号页脚学号页脚”。(4) (4) 参照第参照第(3)(3)步再设置步再设置“编号编号”分组,此时报表分组,此时报表中又添加中又添加“编号页眉编号页眉”和和“编号页脚编号页脚”两个节如两个节如下页图所示,这里添加的页眉和页脚就是前面介下页图所示,这里添加的页眉和页脚就是前面

42、介绍的绍的“组页眉组页眉”和和“组页脚组页脚”。 (5) (5) 打开打开“字段列表字段列表”窗口,从窗口,从“字段列表字段列表”窗口中窗口中拖放拖放“学号学号”字段到字段到“学号页眉学号页眉”中,并将其关联标中,并将其关联标签文字修改为:签文字修改为:年级:年级:在学号字段的属性窗口中修改在学号字段的属性窗口中修改其其“控件来源控件来源”属性为属性为“=Left(学号学号,2)”;再从;再从“字字段列表段列表”窗口中拖放窗口中拖放“编号编号”字段到字段到“编号页眉编号页眉”中,中,并将其关联标签文字修改为:并将其关联标签文字修改为:课程编号:课程编号:。(6) (6) 在在“编号页脚编号页脚

43、”中添加计算字段,方法为先在中添加计算字段,方法为先在“编号页脚编号页脚”中添加一非绑定文本框,然后在控件中添加一非绑定文本框,然后在控件“属性属性”窗口中的窗口中的“控件来源控件来源”属性框输入:属性框输入:=Avg(=Avg(成绩成绩),最后将其关联标签文字修改为:,最后将其关联标签文字修改为:平均平均分:分:,如下页图所示。,如下页图所示。(7) 将报表页眉中标签上的内容改为:成绩表_分组。 “ “排序与分组排序与分组”窗口的窗口的“组属性组属性”窗格有窗格有5 5个属性个属性项,用来指定分组的具体设置。下面对这项,用来指定分组的具体设置。下面对这5 5个属性项个属性项作简要介绍。作简要

44、介绍。组页眉:用于决定所选定的排序字段是否包含页眉。组页眉:用于决定所选定的排序字段是否包含页眉。是:添加组页眉;否:不添加组页眉或删除已添加的是:添加组页眉;否:不添加组页眉或删除已添加的组页眉。组页眉。组页脚:和组页眉类似。组页脚:和组页眉类似。分组形式:用于决定按什么方式组成新组。每一个值:分组形式:用于决定按什么方式组成新组。每一个值:按整个字段或表达式相同值分组。前缀字符:按组间按整个字段或表达式相同值分组。前缀字符:按组间距指定的前距指定的前n n个字符相同值分组。分组形式因分组字个字符相同值分组。分组形式因分组字段的数据类型的不同,其设置选项也会不一样。段的数据类型的不同,其设置

45、选项也会不一样。组间距:用于和组间距:用于和“分组形式分组形式”属性一起说明分组属性一起说明分组数据的间距值。如果数据的间距值。如果“分组形式分组形式”是是“每一个每一个值值”,“组间距组间距”必须设置为必须设置为“1”1”。如果。如果“分分组形式组形式”是是“前缀字符前缀字符”,“组间距组间距”可以是一可以是一个正整数。如果将个正整数。如果将“班级代号班级代号”作为排序字段,作为排序字段,“分组形式分组形式”是是“前缀字符前缀字符”,而,而“组间距组间距”设设为为2 2,那么报表中的数据就会按,那么报表中的数据就会按“班级代号班级代号”的的前前2 2个字符相同值分组。个字符相同值分组。保持同

46、页:用于决定同组的数据是否打印的同一保持同页:用于决定同组的数据是否打印的同一页上。页上。 组页眉和组页脚的主要属性如下。组页眉和组页脚的主要属性如下。强制分页:用于决定在该节前后是否强制分强制分页:用于决定在该节前后是否强制分页。属性项分无、节前、节后、节前和节后页。属性项分无、节前、节后、节前和节后4 4种选择。种选择。重复节:用于指定是否在每一页的顶端重复重复节:用于指定是否在每一页的顶端重复组页眉。组页眉。在报表中进行计算与汇总数据非常方便,前面我们已经计算各科的平均分。计算与汇总也可以在报表向导中进行,也可在设计视图中修改。计算与汇总方式:1、每组记录的计算与汇总2、整个报表的计算与

47、汇总案例9:以查询“成绩交叉表”作为数据源,使用报表向导创建“个人成绩”报表,不设分组字段,以“学号”升序排序,并创建计算每人成绩的计算字段:总分和平均分。 先创建好不包括计算字段的“个人成绩”报表(可用报表向导创建)。然后创建计算字段。(1)将新建的“个人成绩”报表切换到“设计”视图,在报表的“主体”节中“成绩”字段的右侧添加一个未绑定文本框;(2)选定未绑定文本框的关联标签(标签中的文字为Text17),选择“编辑剪切”;(3)单击“学号页眉”,再选择“编辑粘贴”;关联标签已复制到“学号页眉”的左上角;将其移到“成绩”标签的右侧;并将标签中的文字改为:总分;(4)调整未绑定文本框和“成绩”

48、标签的大小和位置,和其左侧控件一致;(5)选定未绑定文本框;打开它的“属性”窗口;在“数据”选项卡中的“控件来源”栏输入:=112+301+302+403;关闭“属性”窗口。(6)同样的方法添加平均分字段,并求出平均分。报表的设计视图: 在报表中创建计算字段主要用于对全部记录或分组记录进行汇总。对每一个记录单独进行计算的计算字段一般应放在查询中,报表就以这个查询为记录源。这样可以提高报表的运行速度。而且可以在合计函数中使用计算字段的名称。在计算公式中引用的字段名要用中括号括起来。 汇总是报表中最重要的功能,对报表中的分组数据和总体数据进行汇总,有助于比较分析数据。 一般:组的汇总数据放在组页脚

49、中;报表的汇总数据放在报表页脚中。 例如:案例8中的平均分,就属汇总。 汇总函数:Avg Sum Max Min等案例10:对“个人成绩”报表,在报表页脚位置求各科的总分和平均分。(1)在报表页脚处,在各科目列中添加文本框,将除第一个文本框外其他文本框的附加标签删除;(2)选定“112”列下的未绑定文本框;打开它的“属性”窗口;在“数据”选项卡中的“控件来源”栏输入:=Sum(112);关闭“属性”窗口。(3)同样的方法设置其余文本框的值。(4)总分行的下一行位置添加文本框,类似求总分方法用Avg函数求各科平均分;(5)设计完成后报表的设计视图如下图:5.5.1 子报表概述5.5.2 创建子报表 实际的数据库中,许多表之间是一对多的关系。实际的数据库中,许多表之间是一对多的关系。利用子窗体可以在窗体中同时显示有一对多关系的两利用子窗体可以在窗体中同时显示有一对多关系的两个表中的记录。利用子报表也能做到这一点,主报表个表中的记录。利用子报表也能做到这一点,主报表中显示中显示“一一”端表记录,而子报表则显示与端表记录,而子报表则显示与“一一”端端表当前记录相对应的表当前记录相对应的“多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论