《报表的实用课件》由会员分享,可在线阅读,更多相关《报表的实用课件(52页珍藏版)》请在金锄头文库上搜索。
1、第 七 章 报 表,第 一 节 报表概述,一、报表的概念 报表主要用于对数据库的数据进行分组、计算、汇总和打印输出,它将根据指定规则打印输出格式化的数据信息。 Access的报表提供了以下功能: 可以对数据进行分组、汇总 可以包含子窗体、子报表 可以按特殊设计版面 可以输出图表和图形 能打印所有表达式,二、报表的类型 纵栏式报表 以垂直方式在每一页中主体节区显示一条或多条记录。用来记录数据的字段标题信息与字段记录数据一起被安排在每页的主体节区域内同时显示。 纵栏式报表可以安排显示一条记录的区域,也可同时显示一对多关系的“多”端的多条记录的区域,甚至包括合计。,纵栏式报表,表格式报表 以整齐的行
2、、列形式显示记录数据。通常一行显示一条记录、一页显示多行记录。 表格式报表的记录数据的字段信息不是被安排在每页的主体节,而是安排在页面页眉的区域内显示(即各记录共用一个字段标题)。,表格式报表,图表报表 数据以图表的形式直观地打印出来。 标签报表 是一种特殊类型的报表。主要用于打印书签、名片、信封、邀请函等特殊用途。,图表报表,标签报表,三、报表的组成 报表主要由以下七部分组成: 报表页眉 页面页眉 主体 页面页脚 报表页脚 组页眉 组页脚 每一个部分称为“节”。其中的主体节是必须具有的,其余各节可以根据需要随时增删(点击鼠标右键方法)。,1、报表页眉 这是整个报表的页眉,用于显示整个报表的标
3、题、说明性文字、图形、制作时间或制作单位等信息。 每个报表只有一个页眉,它的内容打印在报表的首页上。,2、页面页眉 页面页眉的内容打印在每页的顶端(即每页均打印一次)。 如果报表页眉和页面页眉共同存在于首页,则页面页眉的内容在报表页眉的下方。,3、主体 报表的主体用于处理每一条记录(即每条记录均打印一次),其中的每个值都要被打印。 主体是报表内容的主体区域,通常含有计算字段。,4、页面页脚 页面页脚打印在每页的底部,用于显示本页的汇总说明。 页面页脚通常包含页码,通过一个文本框控件显示页码,文本框的ControlSource属性值为一个表达式,即:= 第 & Page & 页, Page 为页
4、码变量。,5、报表页脚 报表页脚用于打印报表末端,通常使用它显示整个报表的计算汇总、日期和说明性文本等。 6、组页眉 分组后在报表每组头部打印输出,同一组的记录都会在主体节中显示,它主要定义分组报表,输出每一组的标题。 7、组页脚 分组后在报表的每页底部打印输出,主要用来输出每一组的统计计算标题。,当需要在报表中进行分类汇总统计时,即需要设置组页眉和组页脚,这是分组汇总的依据。 组页眉每组打印一次,且打印在每组数据的开始端;组页脚打印在每组数据的末端。,四、报表的视图 设计视图 用于创建和编辑报表的结构。 布局视图 报表视图 用于查看报表的字体、字号和常规布局等版面设置 打印预览视图 用于查看
5、报表和每一页上显示的数据。 报表的各个视图之间可以互相切换。,五、窗体与报表的比较 相同点 两者均可以有其数据源,其数据源可以是表、查询或SQL语句,数据源均存储于本地数据库中。 两者的结构、创建方法均有相似之处。 不同点 窗体的主要作用是建立用户与系统交互的界面,对数据库中的数据进行访问时除可以显示数据外,还可以输入数据、修改数据、删除数据等操作。 报表主要用于数据库数据的打印输出,并且可以对数据库中的数据进行分组、计算、汇总等操作。,第 二 节 创建报表(使用自动、向导),在Access中,可以使用4种方法创建报表: 自动创建报表 创建空报表 利用报表向导创建报表 使用设计视图创建报表,一
6、、使用“自动创建报表”创建报表 使用“自动创建报表”,可以选择记录源和报表格式(包括纵栏式或表格式)来创建报表。该报表能够显示表中的所有字段和记录。 【例1】使用“自动创建报表”创建一个能够输出学生信息的报表。 操作步骤: 选中“学生表” 点击【创建】选项卡/【报表】组/【报表】按钮,二、创建空报表 创建空报表是指创建一个空白报表,然后将选定的数据字段添加到报表中所创建的报表。 注意:数据源只能是表。 【例2】使用“空报表”创建一个能够输出学生信息的报表。 操作步骤: 点击【创建】选项卡/【报表】组/【空报表】按钮 【报表布局工具】【设计】/【工具】/【添加现有字段】,出现字段列表,把字段拖放
7、在空报表上。,三、使用报表向导创建报表 在使用报表向导创建报表时,需要选择在报表中出现的信息(包括报表标题、显示字段等),并从多种格式中选择一种格式以确定报表的外观。 【例3】使用报表向导创建一个能输出学生的学号、姓名、课程名称和成绩的学生成绩报表。 操作步骤: 使用向导创建新报表 设置数据源及输出字段(数据源允许多表) 确定查看数据的方式(多表时的设置) 设置分组依据、排序依据和汇总选项 确定报表的布局和样式 确定报表的标题(亦即报表名称),四、使用“标签向导”创建报表 利用标签向导可以快捷地创建标签。 【例4】使用“标签向导”创建一个学生的标签,要求输出:学号和姓名。 操作步骤: 使用“标
8、签向导”创建标签 设置数据源(数据源仅允许单表) 按向导提示进行各项设置,五、创建图表报表 图表报表没有向导方法,只能使用图表控件向导创建。 【例5】使用“图表控件向导”创建一个各院系不同职称的人数图表。 操作步骤: 点击【创建】选项卡/【报表】组/【空报表】按钮或者【报表设计】按钮 控件组中添加图表控件 设置数据源(数据源仅允许单表) 按向导提示进行各项设置,第 三 节 在设计视图中创建报表,有些报表是无法通过报表向导来创建的,必须使用报表设计视图来完成。 创建一个新报表或打开一个报表,打开设计视图 添加数据源 添加控件 设置控件的属性 保存报表并预览,1、使用报表设计视图创建报表 【例6】
9、使用报表设计视图创建“学生基本信息报表”。 操作步骤: 使用报表的设计视图新建报表 设置报表的数据源(RecordSource属性) 利用【报表设计工具】【设计】/【控件】组,在报表的各个节内添加控件,并设置它们的属性和调整它们的位置。,报表的数据源可以是单个的表或查询。 如果报表的数据源涉及到多表,则必须查询。,一、创建简单报表,2、为报表添加页码 P228 操作步骤: 打开报表的设计视图 【报表设计工具】【设计】/【 页眉/页脚】/【页码】 在【页码】对话框中作相应的选择(格式、位置、对齐方式等),也可以在报表中添加一个文本框之后设置文本框的控件来源ControlSource属性。, Pa
10、ge 是页码变量, Pages 是页数变量。,【例7】在“学生基本信息报表”报表的页面页脚的右侧添加页码,页码的格式为:第N页,共N页。 1)利用【报表设计工具】【设计】/【页眉/页脚】/【页码】 2)手工插入页码 添加文本框,文本框是计算控件,3、为报表添加分页符 在报表中,可以在某一节中使用分页符来标志需要另起一页的位置。 分页符的添加方法与窗体中使用分页符相同,即在报表中添加一个分页符控件。,分页符以短虚线标志在报表的左边界上。 应将分页符设置在某个控件之上或之下,以免拆分了控件中的数据。,4、为报表添加当前日期和时间 P227 1)用【报表设计工具】【设计】/【页眉/页脚】/【日期和时
11、间】添加 2)手工添加,手工添加文本框后,可以使用Date( )、Time( )和Now( )等日期函数作为文本框的控件来源属性。,5、在报表上绘制线条和矩形 P226 方法与在窗体上绘制线条和矩形的方法相同。 【例8】在报表的列标题下和每页的末尾添添加一条水平直线。 操作步骤: 打开报表的设计视图 将线条添加到报表的合适位置,并设置其属性。,由于仅在每页的开始处和结束处打印直线,所以直线应添加在“页面页眉”和“页面页脚”区域中。 直线如果添加在主体区域,则直线将会分隔每条记录。,二、报表的排序、分组和计算 1、记录排序 在默认的情况下,报表中的记录是按照自然顺序(记录输入的先后顺序)来排列显
12、示的。 所谓排序,就是让记录按某个指定的顺序(通常是字段或字段表达式的值)排列显示。 【例9】将“各门课程成绩明细报表”按课程名称、成绩(降序)、学号排序。 操作步骤: 打开报表的设计视图 菜单命令:【视图】/【排序与分组】 在对话框中作相应的选择(排序字段及优先顺序、升降序),在【分组、排序和汇总】面板中最多可以对10个字段进行排序,且排序依据只能是字段,不能是字段表达式。 字段的顺序即为排序的优先顺序。 要改变排序顺序,可直接在对应行中点击箭头。,2、记录分组 所谓分组,是指报表设计时按选定的某个(或几个)字段值是否相等而将记录划分成组的过程。 【例10】将“各门课程成绩明细报表”按课程名
13、称进行分组。 操作步骤: 打开报表的设计视图 在【分组、排序和汇总】面板添加分组和排序,各个控件在报表中的位置区域。 将不需要打印的区域的高度设置为0。,3、在报表中实现计算 通过分组可以实现同组数据的汇总和显示输出。 方法:添加计算控件 (P225) 计算控件是其【控件来源】属性是一个表达式,当表达式的值发生变化时,将会重新计算结果并输出。文本框是最为常用的计算控件。 1)为报表添加计算控件,计算控件的【控件来源】属性必须是一个以等号“ = ”为开头的计算表达式。,2)计算控件的输出 计算控件统计计算形式与其所在报表的区域相关: 在主体节内的计算控件 此时的控件可以完成对每条记录的若干字段进
14、行计算操作,做的是横向计算。其控件源为字段表达式。 在组页眉/组页脚(或页面页眉/页面页脚)节内的计算控件 此时的计算控件可以完成分组后记录的字段或所有记录的字段进行计算操作,做的是纵向计算。其控件源通常含有系统的内置统计函数。,(P225),【例11】将“各门课程成绩明细报表”按课程名称进行分组(组内按成绩降序排序,成绩相同的按学号排序),并计算各门课程的平均成绩。 操作步骤: 打开报表的设计视图 在【分组、排序和汇总】面板添加分组和排序 在分组页脚节添加控件实现计算,各个控件在报表中的位置区域。 将不需要打印的区域的高度设置为0。,三、子报表 子报表是出现在另一个报表内部的报表,包含子报表
15、的报表称为主报表。 主报表中包含的是一对多关系中的“一”,而子报表显示“多”的相关记录。 在合并报表时,两个报表中必须有一个作为主报表。 主报表可以是绑定的,也可以是未绑定的。即:报表可以基于表、查询或SQL语句,也可以不基于任何数据对象。,主/子报表的创建方法:,2先使用设计视图创建主报表,然后使用子窗体向导创建子报表,3创建子报表并将其添加到已有的报表中 当【工具箱】工具栏中的【控件向导】按钮已弹起时,单击【子窗体/子报表】按钮在主报表中拖出一个矩形,形成一个子报表控件。可设置该控件的以下属性: 源对象(SourceObject):输入作为子报表数据源的报表名称。 链接子字段(LinkCh
16、ildFields):输入子报表中一个链接字段的名称。 链接主字段(LinkMasterFields):输入主报表中一个链接字段的名称。,1使用向导,四、多列报表,默认情况下,无论是利用向导还是设计视图创建的报表都是单列报表。在单列报表的基础上可以创建一个多列报表。,操作步骤: 在设计视图中打开单列报表 打开【报表设计工具】/【页面设置】/【页面布局】/【列】按钮,打开页面设置对话框 在【页面设置】的【列】选项卡中作以下设置: 【列数】报表的列数 【行间距】行之间的距离 【列间距】列之间距离 【宽度】【宽度】每列的宽度和高度 【列布局】先列后行 先行后列,第 五节 打印报表,创建报表主要目的是打印报表。 一、页面设置 页面设置的内容包含设置打印纸的尺寸,页边距和列的设置 操作步骤: 打开报表的设计视图 在【报表设计工具】/【页面设置】/【页面设置】打开页面设置对话框 设置相应的参数,2、打印报表 打印报表是指在纸上输出报表