第 5 章 报表
Access 报表的基本作用、结构与类型。
通过向导创建固定格式的报表以及通过设计视图创建自定义报表。
报表中添加控件、设置控件的属性并对其进行编辑。
使用表达式计算结果。
在报表中创建多级排序与汇总。
编辑并美化报表。
显示与打印报表。
理解不同类型报表的作用与结构。
掌握使用向导创建基本报表的方法。
掌握使用设计视图创建各种不同格式的报表。
掌握报表中控件的使用。
了解创建多级排序和分组汇总报表的方法。
了解美化报表的外观并显示与打印报表的方法。
5.1 报表概述
报表是以打印格式显示数据的一种有效方式,它根据用户需求重新组织数据表中的数据,
并按特定的格式显示或者打印。报表也是 Access 数据库的一个对象,其信息可以是表或者查 询的直接副本;也可以对数据分组,再按照所要求的任何次序对数据分类,然后按分组的次序 来显示数据;还可以建立数字相加的汇总、计算平均值或者其他统计。可以说,只要用户能够 想象出的报表,Access 几乎都能够建立。
5.1.1 一个报表的例子 例 5-1 学期课程表。
创建和设计报表与创建和设计窗体的操作有很多共同之处,两者之间的所有控件几乎是 可以共用的,它们之间的不同在于报表不能用来输入数据。图 5-1 所示的学期课程表就是使用 课程统计查询作为数据源创建的报表。
图 5-1 学期课程表
5.1.2 报表的类型
在 Access 数据库中,用户可以使用四种类型的报表。
1.表格式报表
表格式报表的外观与通常的报表相似,以整齐的行、列形式显示记录数据,一行表示一 条记录、一页可以显示多条记录。在表格式报表中,如果在设计报表时,将与字段对应的标题 信息设置在页面页眉中,则报表的每一页都会有一个标题行,如图 5-2 所示。
图 5-2 学生基本信息报表——表格式报表 2.纵栏式报表
纵栏式报表,也称为窗体报表,以垂直(纵向)方式在一页中显示一条或多条记录,其 标题信息与数据在一起显示,左侧是标题,右侧是对应的数据记录,如图 5-3 所示。
图 5-3 系部信息报表——纵栏式报表 3.图表式报表
图表式报表用图表的形式显示信息,可以更直观地表示数据及数据之间的关系。可以根 据实际需要选择多种不同形式的图表,图 5-4 所示的是以折线图形式表示的各专业、各年级学 生入学的平均成绩情况。
图 5-4 学生入学成绩图表——图表式报表 4.标签报表
标签报表将与表或者查询对应的一条记录中的指定内容组织为邮件标签格式,一页中可 以显示多个标签,如图 5-5 所示。
图 5-5 学生基本信息——标签式报表
5.1.3 建立报表的过程
建立报表不仅是在 Access 的设计视图中进行操作。实际上,在开始创建报表之前,一般 均需要做一些计划及准备工作。
例 5-2 请简要描述创建报表的基本过程。
分析:创建报表也要建立在满足用户需求的基础上。当用户需要对原始数据进行一定的 处理以表达更加明确的信息时,对报表的需求就提出来了。一般来说,报表的建立过程包括以 下几个步骤:
(1)明确需求。明确用户希望报表提供哪些信息、这些信息以什么格式显示等。
(2)定义报表布局。根据用户需求,定义报表的布局。比较正式的做法是做原型设计,
通过某种工具(电子或者纸质的)描绘出报表的布局。在非正式的情况下,这种设计可以仅仅 是大脑中的想象。
(3)汇集数据。为报表汇集所需要的数据。如果报表中使用的数据来源于多个表,可以 先创建一个查询将这些表格连接在一起,再使用查询作为报表的数据源。
(4)使用向导或者设计视图创建报表。上述准备工作完成之后,就可以开始创建报表了。
如果报表的格式比较简单,一般可以通过向导创建;而如果报表的格式相对较复杂,还是需要 通过设计视图建立报表。
(5)打印或浏览设计的报表。
5.2 快速创建报表
Access 提供了报表向导及自动创建报表两种方法快速创建报表。类似于窗体向导,用户 可以先通过报表向导创建基本的报表布局,再通过设计视图修改。
5.2.1 用报表向导创建报表
例 5-3 设计一个报表,以课程为单位显示学生的成绩表,报表显示内容及格式如图 5-6 所示。
图 5-6 课程成绩表
分析:这是一个一般意义上的报表,已经有了明确的格式要求,内容按课程名称分组显 示,涉及的数据项包括课程名称、学号、姓名、班级名称和成绩。需要选择多张表作为数据源,
主要操作步骤如下:
(1)打开“新建报表”对话框。在高校学生管理数据库窗口中选择“报表”对象,单击
“新建”按钮,打开“新建报表”对话框,选择“报表向导”,单击“确定”按钮,屏幕显示 如图 5-7 所示的“报表向导”对话框。
图 5-7 确定报表的数据源和字段
(2)选择报表的数据源及其字段。这里可以选择多个表或者查询中的数据(字段)。在 如图 5-7 所示的对话框中,依次选择“表/查询”下拉列表框中的“表:课程表”、“表:学生 基本信息表”、“表:班级表”和“表:成绩表”后,在“可用字段”列表框中根据需要选择其 中的部分或者全部字段。
(3)确定查看数据的方式。在确定查看数据方式对话框中,选择“通过课程表”选项,
如图 5-8 所示。如果需要可以选中“显示更多信息”复选框,查看更加详细的说明。
图 5-8 确定报表的分组字段
(4)确定是否添加分组级别。如果需要,选择一个字段作为二级分组级别,否则直接进 入下一步。
(5)确定明细信息使用的排序次序和汇总信息。在如图 5-9 所示的对话框中,确定排序 字段及排序方式,选择 xh、“升序”。在这里用户最多可选择四个排序字段,排序方式可以是 升序或者降序,单击旁边的按钮即可以在升序与降序之间转换。
图 5-9 选择排序字段
图 5-9 中还有一个“汇总选项”按钮,单击该按钮,屏幕将会显示“汇总选项”对话框,
用户可以选择需要计算的汇总值。
(6)确定报表的布局方式。在确定报表的布局方式对话框中,选择布局为“递阶”,方 向为“纵向”。
(7)确定所用样式。在确定所用样式对话框中,可以在列出的六种样式中任意选择一种,
本题目中选择“组织”样式。
(8)指定报表标题。在指定报表标题对话框中,将报表标题指定为“课程成绩表”,选 择“修改报表设计”单选项,单击“完成”按钮后,屏幕显示报表设计视图对话框;否则,直 接浏览设计结果。
(9)在设计视图中修改报表。通过向导设计的报表一般还需要进一步修改。例如,本 题中要将标题字体样式改为“倾斜”,调整报表页眉中的标签位置及格式,将组页眉,即课 程名页眉中的标签长度加大,调整主体节中的记录显示行间距等。这方面的操作将在下一节 详细讨论。
5.2.2 自动创建报表
Access 还提供了一种比向导更加简单的创建报表的方法——自动创建报表。在创建报表 的过程中,用户只需指定数据源,其他工作全由 Access 自动完成。
例 5-4 在高校学生管理数据库中,创建一个学生基本信息报表。
操作步骤如下:
(1)打开“新建报表”对话框。在高校学生管理数据库中,选中“报表”对象,单击“新 建”按钮,弹出“新建报表”对话框,如图 5-10 所示。
图 5-10 “新建报表”对话框
(2)选择报表类型。在如图 5-10 所示的对话框中可以看到,自动创建的报表有两种类型
——纵栏式和表格式。选择表格式,在报表数据记录的来源中,选择教师基本信息表。单击“确 定”按钮后屏幕显示所创建的表格式报表,但其中的标题等信息还需要在设计视图中修改。
(3)将该报表的名称指定为教师基本信息报表并存储。
与上面的操作类似,可以通过自动报表创建纵栏式报表。
5.3 用设计视图创建报表
通过报表的设计视图可以从一个空白的窗体开始逐步设计出符合需要的完整的报表。在 本章的第 1 节,曾经提到设计报表的过程包括明确需求、定义报表布局、汇集数据、使用设计 视图创建报表及打印或浏览设计的报表五个阶段。报表的设计只有在需要明确后才能开始,本 节讨论如何在设计视图中创建符合用户需要的报表。
5.3.1 报表的设计视图
在 Access 数据库中,与其他数据库对象类似,创建报表主要通过向导及设计视图两种方 式。向导比较直观,操作也比较方便,可以创建表格式与纵栏式报表,但所创建的报表相对比 较简单,一般还需要通过设计视图进行修改。
例 5-5 观察报表设计视图的组成,并将其与窗体的设计视图进行对比。
说明:如果用户对报表格式有较高的要求,一般均需要通过设计视图创建报表。
类似于窗体的设计视图,报表的设计视图也由五部分组成,分别是报表页眉节、页面页 眉节、主体节、页面页脚节及报表页脚节等,如图 5-11 所示。
图 5-11 报表设计视图 1.主体节
主体节是窗体及报表的主要组成部分,其组成元素主要是 Access 提供的各种控件。在报 表中,主体节可用于显示数据源中的记录,还可以添加 Access 中的控件。
2.报表页眉与页脚
报表页眉位于报表顶部,用于为报表添加标题或使用说明等。其中显示的信息对每个记 录都是一样的,在打印时,报表页眉只出现在第一页的顶部。
报表页脚位于报表的底部,用于放置命令按钮或者报表的说明信息。类似于报表页眉,
其中显示的信息对每个记录都是一样的,在打印时,仅出现在最后一条主体节之后。
3.页面页眉与页脚
页面页眉仅仅出现在打印的报表中,在每张打印页的顶部显示标题信息。类似的,页面 页脚也仅仅出现在打印报表中,通常用于显示日期及页号等信息。
除了上面的几个部分,如果在报表中有排序或分组显示,在设计视图中则还有组页眉和 组页脚节,以实现报表的分组输出和分组统计等功能。
在如图 5-11 所示的报表设计视图中,可以看到完整的报表结构,也能看到报表设计的工 具箱。工具箱的使用与窗体设计视图中基本相同,但也有一些细微的差别,请读者通过实际应 用体会这些差别。在报表的设计视图中,可以修改报表的属性,添加需要的控件,美化报表的 外观等。设计好的报表可以通过 Access 提供的打印预览及版面预览两个功能,观察显示及打 印效果。
5.3.2 创建报表的任务
为了创建一个用户自定义的报表,在使用设计视图创建报表时需要完成多项任务,下面 结合一个例子来讨论具体的设计方法。
例 5-6 通过设计视图创建如图 5-12 所示的分班级课程统计表。
分析:由于报表中的数据分别来源于教师表、课程表及开课情况表三个表,首先要建立 一个查询,将相关的数据汇集起来。报表内容是分班级统计课程信息,因此在设计报表时要设 置分组字段。主要操作如下:
图 5-12 分班级课程统计表
(1)创建新报表并将其与查询结合。通过设计器创建报表时,通常先创建一个新的空白 报表,并使其与某个已有的表或者查询结合起来。所谓将报表与表或查询结合,指的是表或者 查询中的字段可用于报表设计;当查看或者打印报表时,使用来自于指定的表或者查询的数据。
按以下步骤操作:
1)打开“新建报表”对话框。
2)选择“设计视图”。
3)在“请选择该对象的数据来源表或查询”后面的组合框中,显示了当前数据库中所有 的表和查询的列表框,选择“课程统计查询”。
4)单击“确定”按钮并最大化窗口。
此时屏幕显示出报表设计窗口,同时弹出工具箱及查询中的字段列表窗口,如图 5-13 所 示。可以通过工具箱及字段列表按钮控制两个相应窗口的显示与隐藏。在报表设计窗口中,有 页面页眉、主体与页面页脚三个节。
图 5-13 报表设计窗口
(2)定义报表页面的大小与布局。在设计报表时,需要考虑报表页面的大小及布局特点,
要考虑输出用的打印机及纸张类型,并据此进行页面设置。只有这样,才能够产生需要的报表。
例如,要将报表的打印方向设置为“横向”,所用的纸张大小是 A4,上、下页边距是 22mm,
左、右页边距是 25mm。操作步骤如下:
1)在 Access 主窗口中,选择“文件”→“页面设置”命令,打开“页面设置”对话框。
2)选择“边距”选项卡,单击上边距后面的文本框,将设置改为 22mm,依此类推,将 下边距设置为 22mm,左、右页边距设置为 25mm。
3)选择“页”选项卡,设置打印方向为“纵向”、纸张大小为 A4,如图 5-14 所示。
4)设置完成后单击“确定”按钮,关闭“页面设置”对话框。
图 5-14 “页面设置”对话框
(3)在主体节中放置字段。在如图 5-13 所示的设计视图中,把 xm、xss、bjmc 及 kcm 这四个字段依次拖到主体节中,如图 5-15 所示,与每个字段对应的有标签及文本框两个控件。
图 5-15 在主体节中放置字段
(4)设置页面页眉。页面页眉中的标题要与主体节中的内容相对应,一般都是标签。本 例中要为主体节中显示的每一个字段信息添加标题。按住 Shift 键,依次单击主体节中每个字 段前面的标签,将其剪切并粘贴至页面页眉节中,再对它们的位置进行调整,将显示信息改为 中文,字体格式设置为宋体、加粗及 12 号。在这些标签的上、下各添加一个直线控件,如图 5-16 所示。也可以通过添加标签控件来设置页面页眉。
图 5-16 在页面页眉节中设置标签
(5)设置排序与分组。排序是根据一个或者多个字段的值来确定数据显示的顺序。分组 是根据某一个字段的值将相关的记录分成组,可以使报表的信息更加全面、准确。在添加分组 之前,必须先在报表中用至少一个字段指定排序顺序。
单击常用工具栏中的排序与分组图标,屏幕显示如图 5-17 所示的“排序与分组”对话框,
选择排序字段为 bjmc、排序次序为“升序”,“组页眉”及“组页脚”均为“是”。此时报表的 设计视图中将显示分组页眉节(bjmc 页眉)及页脚节(bjmc 页脚),如图 5-18 所示。
图 5-17 选择排序字段
(6)设置分组页眉与页脚。在如图 5-18 所示的设计视图中,通过复制与粘贴将主体节中 的 bjmc 字段放置至 bjmc 页眉节中,并将其字体等格式设置为宋体、加粗及 12 号。在 bjmc 页脚中添加显示课程汇总信息的控件。分两组,每组一个标签、一个文本框及另一个标签。第 一 组 中 , 第 一 个 标 签 的 显 示 信 息 设 置 为 “ 本 班 安 排 的 课 程 共 有 :”, 文 本 框 中 输 入
“=count([bjmc])”,第 2 个标签的显示信息设置为“门”。第二组中,第一个标签的显示信息 设置为“总学时”,文本框中输入“=sum([xss])”,第 2 个标签的显示信息设置为“课时”。
图 5-18 设置分组页眉与页脚
(7)设置页面页脚。在页面页脚节中增加两个文本框控件,分别在其中输入“=Now()”
及“="共 " & [Pages] & " 页,第 " & [Page] & " 页"”。
(8)为报表添加标题。在报表设计视图中,单击鼠标右键,在弹出的快捷菜单中选择“报 表页眉/页脚”命令,在报表页眉节中添加一个标签,内容为“分班级课程统计报表”,并将其 字体等属性设置为黑体、14 号字,调整到合适的位置,如图 5-19 所示。
图 5-19 为报表添加标题
至此,任务基本完成。可以通过版面预览来看一看表格的格式是否达到了预期的效果。
如果不满意,可以在设计视图中调整控件的位置并修改其属性。
其他控件的使用方法与本例题基本相同。但由于报表主要是用于输出数据,命令控件是 不起作用的。
例 5-7 设计一个学生费用结算报表,如图 5-20 所示。能够打印出每一个学生本学期的费 用结算表,报表中包含标题行及费用明细数据行。
图 5-20 学生费用结算报表
分析:本例中报表的目的是打印出每个学生的费用情况。因此至少有两个方面的要求:
一方面,要求分部门;另一方面,每一个学生的费用报表都有相同的结构且都应该有标题。数 据源选择第 3 章中的学生费用余额查询。首先通过报表向导创建表格式报表,再通过设计视图 进行修改。操作步骤如下:
(1)按照例 5-3 的方法创建学生费用结算报表。
(2)删除报表页眉中的标签控件。在学生费用结算报表中,该控件并没有实际意义,所 以可以删除。
(3)将页面页眉中的各个标签移动到主体节。费用结算报表中,对应每一个记录都需要 有一个标题。因此,将页面页眉中的标签控件直接移动到主体节中是比较省事的方法,如图 5-21 所示。
图 5-21 学生费用结算报表的设计视图
(4)关闭设计视图,保存设计结果。
5.3.3 子报表
子报表与子窗体一样,是指插入到其他报表中的报表,被插入的报表叫主报表。在 Access 中,可以通过子报表向导为一个报表添加子报表,也可以将一个已有的报表插入到另一报表中 作为其子报表。
例 5-8 在高校学生管理数据库中,创建一个报表。对应于学生基本信息报表中的每一行,
能够同时显示相关的费用信息,如图 5-22 所示。
图 5-22 主/子报表
分析:依照题目要求,在显示学生基本信息报表内容时,同时显示相关的费用信息,这 是典型的主/子报表。从图中可以看到,主表与子表的链接字段为姓名。与第 4 章中创建主/子 窗体的方法类似,一般先要建立主报表和子报表的数据源表之间的关联关系,然后建立主报表,
通过子报表向导在主报表的主体节中添加子报表。在本例中,首先建立学生基本信息表和学生 费用结算表之间的一对一关系;然后创建两个表格式报表——学生基本信息报表及学生费用结 算报表。具体操作步骤如下:
(1)创建学生基本信息报表及学生费用结算报表(如果表已经存在,直接转(2))。
(2)打开学生基本信息报表的设计视图。
(3)启动子报表向导。
在工具箱中,确保控件向导按钮处于激活状态,选择子窗体/子报表控件,在主体节中单 击,屏幕显示“子报表向导”对话框,如图 5-23 所示。选择“使用现有的报表和窗体”单选 按钮,并选择“学生费用结算报表”选项,单击“下一步”按钮。
图 5-23 “子报表向导”对话框
(4)选择链接字段。在如图 5-24 所示的对话框中,指定主/子报表的链接字段。选择“从 列表中选择”单选按钮以及列表中的“对学生基本信息表中的每个记录用 xm 显示学生费用余 额”选项。单击“下一步”按钮。
图 5-24 确定链接字段
(5)命名并保存子报表。在指定子报表名称对话框中,给子报表命名为“学生费用结算 子表”,单击“确定”按钮。
(6)在主报表设计视图中调整子报表。在主报表设计视图中调整子报表的位置,为了减 少在主报表中的显示信息,可以考虑删除子报表的标题标签,调整行距等。关闭主报表设计视 图,通过预览检查显示效果,如果不满意,可以继续在主报表设计视图中修改。图 5-22 所示的 主/子报表也是经过反复修改后的结果。
5.3.4 图表报表
图表报表可以使表达的信息更加直观形象,也能够更好地体现数据的特点及其相互关系。
可以通过 Access 提供的图表向导建立图表报表。
例 5-9 在高校学生管理数据库中,创建一个图表报表,用于显示全校学生志愿者的分布 情况。
操作步骤如下:
(1)启动图表向导。在高校学生管理系统数据库主窗口中选中“报表”对象,单击“新 建”按钮,弹出“新建报表”对话框,选择图表向导,将数据来源表指定为志愿者查询(在该 查询中,显示志愿者的学号、姓名、所在系部的名称)。
(2)确定图表字段。图表要求按系部显示志愿者人数,因此需要按 xbmc 字段分类汇总 xh 的值。图表数据所用的字段为 xbmc 和 xh,选择这两个字段即可。
(3)确定图表类型。指定图表的类型为饼图。
(4)确定数据在图表中的布局方式。选择指定数据在图表中的布局方式,把 xbmc 字段
放到系列框中,xh 字段拖放到数据框中,如果该字段是数字或日期类型,拖放后用鼠标双击 数据框,可以对该字段进行求和、求平均值、求最大值等操作,如图 5-25 所示。
图 5-25 图表中数据布局方式与汇总
(5)确定图表的标题。指定图表的标题。默认为数据表的名称,这里指定报表的名称为
“志愿者分布图”,单击“完成”按钮。
5.4 编辑并美化报表
报表编辑的主要任务是通过一些特殊的显示效果突出报表中的某些信息以增强报表的可 读性;通过对显示格式的调整,美化报表的外观,增加其可看性。在 5.2 和 5.3 两节创建的报 表中,仅使用了标签和文本框控件,并且也没有经过特殊的格式化处理。在本节中,将对前面 建立的报表进行格式化处理,增加一些控件来强化对相关信息的说明,以增强报表的可读性与 可看性。
5.4.1 设置文本型信息的显示效果
在创建了一个报表以后,就可以在报表的设计视图中进行格式化处理,以获得理想的显 示效果。格式化报表的主要内容就是对报表的文本及控件属性进行调整。
1.设置标签控件的属性
增强标签控件的效果主要通过以下几种方式:
(1)改变文本的字体与字号。
(2)改变文本字体的字型。
(3)改变文本的颜色。
(4)设置阴影。
(5)设置标签的名称。
(6)设置标签的标题。
2.设置文本框控件的属性
文本框在使用时,下列属性可能需要经常改变以增加数据的显示效果:
(1)改变文本框的字体和字号。
(2)改变文本框的字型。
(3)改变文本框的前景颜色和背景颜色。
(4)改变文本框的位置。
(5)改变文本框的大小。
(6)设置文本框的控件来源。
例 5-10 修改例 5-3 中创建的课程成绩报表为如图 5-26 所示结果,在文本框中用红色加 粗字体突出显示不及格学生成绩,用绿色倾斜字体显示在 85 分以上的成绩,页眉标签使用灰 色背景,所有信息都居中显示。
图 5-26 美化文本信息
分析:本题可以在例 5-3 的基础上进行操作,此前已经创建好了课程成绩报表,那么只需 要在显示格式上进行修改就可以了。
操作步骤如下:
(1)打开课程成绩报表的设计视图。
(2)修改所有页眉标签的背景色为灰色。
(3)在成绩文本框的右击弹出菜单中选择“条件格式”命令,在弹出的“设置条件格式”
对话框中设置不同成绩的显示情况,在第一个下拉列表框中可以根据需要设置为“字段值为”
或“表达式为”。当前应通过单击添加按钮增加一个条件,“条件 1”设置“字段值为”、“小于”、
“60”的真值格式为红色加粗字体,“条件 2”设置“字段值为”、“大于”、“84”的真值格式 为绿色倾斜字体。具体设置如图 5-27 所示。
图 5-27 文本框设置条件格式
5.4.2 增加新的控件
有时可以在报表中增加一些控件,以加强对相关信息的说明。例如,通过在报表中增加 图片,可以使得报表更加直观。
1.图像控件
可以在报表的任何位置(如在页眉、页脚或主体部分)加入图片。根据添加图片的大小 和位置不同,添加的图片可以用作徽标、横幅,也可以用作节的背景。如果图片遮住了现有控 件,可以选择该图片,然后在“格式”菜单上,选择“置于底层”命令。如果图片大小与节大 小相符,则可以将添加的图片用作节的背景。
2.线条
对于内容较多的报表,使用矩形和直线对其进行适当的分割,可以增加其可读性。通常 的用法是用直线分隔控件,用矩形将多个控件进行可视化分组。在报表的设计视图中,可以直 接绘制矩形及直线,操作方式与文本框或标签等控件相同。
例 5-11 使用标签报表创建学生听课证,添加适当的图片和线条以美化报表。
分析:在学生听课证上应包括课程名称、学号、姓名、性别、班级和照片等信息,应先 创建一个相关信息的查询,并以此查询为数据源创建标签报表,最后在显示格式上进行修改就 可以了。
操作步骤如下:
(1)创建包括课程名称、学号、姓名、性别、班级和照片等信息的课程选修名单查询。
(2)以课程选修名单查询为数据源创建学生听课证标签报表。
(3)打开报表设计视图,在主体节上使用矩形圈起课程及学生信息,并作美化调整,如 图 5-28 所示。
图 5-28 图像、线条的使用
5.4.3 在报表中汇总或计算
简单地显示数据表的内容并不能体现报表的真正价值。为了更好地体现报表的信息价 值,需要对原始数据表或者查询中的数据进行处理,如在分组报表中一般都需要按组进行数 据的汇总。
例 5-12 为例 5-10 的课程成绩报表增加一个汇总,统计每门课程学生的平均成绩。
分析:本题可以在例 5-10 的基础上进行操作,此前已经对成绩按课程进行了分组,那么 只需要在分组 kch 页眉增加总计项就可以了。
操作步骤如下:
(1)打开课程成绩报表的设计视图。
(2)添加统计文本框。
在 Access 的报表中,需要输出计算结果时,通常使用的都是文本框控件,然后修改文本 框的控件来源属性。在课程成绩报表的设计视图中进行以下操作:
在 kchy 页眉节中添加一个文本框。
在文本框前的标签中输入“平均成绩:”。
将文本框的控件来源属性设置为“=Avg([cj])”,如图 5-29 所示。
图 5-29 计算统计文本框
5.4.4 增加打印日期
现实中的报表,一般都需要在打印报表的同时附带上当前日期。
例 5-13 为上例中的课程成绩报表增加打印日期。
分析:打印的时间一般都是当前系统时间,可以用 Now()函数或 Date()函数获取。通常把 这个时间放在报表的最后位置,即报表页脚上。
操作步骤如下:
(1)打开报表的设计视图。
(2)添加打印时间。
1)在报表页脚节中添加一个文本框。
2)在文本框前的标签中输入“打印时间:”。
3)将文本框的控件来源属性设置为“=Year(Now()) &"年"&Month(Now())&"月"&Day (Now()) &"日"”,如图 5-30 所示。
图 5-30 添加打印时间
5.5 打印报表
创建报表的主要目的之一就是打印。在打印报表之前,可以通过打印预览或版面预览观 察版面的效果。
5.5.1 页面设置
一般在创建报表之前,就要考虑报表的页面设置。在本章的例 5-6 中,已经简单地讨论过 页面设置的方法。下面再做一个详细的介绍。
例 5-14 设置例 5-11 中创建的听课证报表的页面,使其适合 A4 纸打印。
页面设置的内容包括设置打印纸的大小、页边距和列数等信息。打开报表后,运行“文 件”→“页面设置”命令即可进入“页面设置”对话框。
(1)设置页边距。在“页面设置”对话框中,单击“边距”选项卡,即可设置页边距,
如图 5-31 所示。在“页边距”框中输入打印的数据和页面的上、下、左、右四个边距,输入 后可以立即在右侧的“示例”框中看到实际打印的效果。
图 5-31 “页边距”选项卡
如果选中了“只打印数据”复选框,则报表打印时不显示诸如分割线、页眉页脚等信息,
而只显示数据库中字段的数据或是计算得来的数据。这个选项一般应用在需要打印数据到已经 制定好格式的纸张上。例如,商场中打印顾客购物清单到发票上,因为发票的格式是预先设定 好的,使用时只需要将购物的清单和价格打印到上面即可。
(2)设置页面。在“页面设置”对话框中的“页”选项卡中,用户可以设置报表的“打 印方向”、“纸张”和使用的打印机,如图 5-32 所示。
图 5-32 “页”选项卡
打印方向可以选择横向或纵向。如果需要设置纸张大小,可以在下拉列表框中选择系统 提供的常用纸张中选择一个。如果用户安装了多台打印机,那么可以选择“使用指定打印机”
单选按钮,然后单击后面的“打印机”按钮,选择本报表将要使用的打印机。
(3)设置列。在“页面设置”对话框中的“列”选项卡中可以设置列数、间距和列布局 等,如图 5-33 所示。
图 5-33 “列”选项卡
其中“列数”,除了标签报表默认是 2 以外,其他报表均默认是 1 列,用户也可以在文本 框中输入制定的列数。在“行间距”文本框中,可以指定打印的报表中行间距的值,在多列的 情况下,可以在“列间距”文本框中指定报表的列间距,还可以在列布局中选择打印时是先列 后行还是先行后列。
5.5.2 打印
例 5-15 请打印上例中设置的学生听课证报表。
当决定打印报表时,按以下步骤操作:
(1)选择“文件”→“打印”命令,显示如图 5-34 所示的“打印”对话框。
(2)指定打印机类型、打印范围及打印的份数,如图 5-34 所示。
图 5-34 “打印”对话框
习题五
一、选择题
1.以下关于报表的描述,正确的是( )。
A.报表只能输入数据 B.报表只能输出数据 C.报表可以输入和输出数据 D.报表不能输入和输出数据 2.报表的主要目的是( )。
A.操作数据 B.在计算机屏幕上查看数据
C.查看打印出的数据 D.方便数据的输入 3.用于实现报表的分组统计数据的操作区间的是( )。
A.报表的主体区域 B.页面页眉或页面页脚区域 C.报表页眉或报表页脚区域 D.组页眉或组页脚区域 4.要在报表每一页的顶部都输出相同信息,需要设置的位置是( )。
A.报表页眉 B.报表页脚 C.页面页眉 D.页面页脚
5.要在报表上显示格式为“7/总 10 页”的页码,则计算控件的控件源应设置为( )。 A.[Page]/总[Pages] B.=[Page]/总[Pages]
C.[Page]&“/总”&[Pages] D.=[Page]&“/总”&[Pages]
6.下列视图中,Access 报表操作中未能提供的视图是( )。
A.设计视图 B.打印预览视图
C.版面预览视图 D.页面视图 7.下列不能作为报表数据源的是( )。
A.查询 B.表 C.SQL 语句 D.宏和模块 8.将报表与某一数据源绑定起来的报表属性是( )。
A.记录源 B.字段 C.标题 D.控件来源 9.在报表设计中,可以作为绑定控件并显示字段数据的是( )。
A.命令按钮 B.文本框 C.图像 D.标签 10.在报表设计的工具栏中,用于修饰版面以达到更好显示效果的控件是( )。
A.直线和矩形 B.直线和圆形
C.直线和多边形 D.矩形和圆形 11.在报表设计视图中设置分页符时,分页符将( )。
A.在左侧以实线显示 B.在右侧以实线显示 C.在左侧以虚线显示 D.在右侧以虚线显示 12.关于报表分组说法,不正确的是( )。
A.在报表中,可以根据任意类型字段进行分组 B.在报表中,可以按多个字段实现多级分组
C.报表中分组的主要目的在于使具有相同值的记录连续显示 D.在报表中,既可以根据字段分组,也可以根据表达式分组
二、填空题
1.较为流行的报表形式有四种,分别是__________、表格式报表、图表式报表和标签式报表。
2.报表设计中,可以通过在组页眉或组页脚中创建__________来显示记录的分组汇总数据。
3.利用报表不仅可以创建计算字段,而且可以对记录__________,计算各组的__________。
4.信息管理的最终目的是要以适当的方式向管理者提供信息,而提供信息的方式有两种:一 是联机检索,二是__________。
5.报表的主要作用是__________和__________数据。
6.在报表设计中,可以通过添加__________控件来控制另起一页输出显示。
7.在 Access 中,报表包括文字报表、__________和__________三大类。
8.用于在窗体或报表上显示说明性文本的控件是__________。
9.对于查询结果,用户可以在一个数据工作表、__________或__________中显示。
10__________将表或查询中的数值变成更直观的图形形式显示。.
11.在 Access 对象中,虽然都是由窗口组成的。但__________与窗体不同,__________不能 用来输入数据。
12.报表是以__________的格式显示用户数据的一种有效的方式。
13.报表不能对数据源中的数据进行__________。
14.在报表中既有分组,又有排序,它们中通常是先进行__________操作。
15.Access 在新建报表对话框中,通常有设计视图、__________、自动创建报表:纵栏式、
自动创建报表:表格式、__________、__________。
16.报表将__________、__________中的数值变成更直观的图形形式显示。
17.对报表中节的操作有__________和__________、显示和隐藏节、调整节的大小。
18.使用向导报表创建报表时,第一步必须选择__________或__________。
19.为使报表标题仅在第一页的开始位置出现,应该将报表的标题放到__________节中。
三、简答题
1.叙述并比较窗体与报表的形式及用途。
2.创建报表的方法有哪些?
3.设置打印分组的作用是什么?
4.在一个报表中,通常标题、表头、表体、表尾及表脚标均应对应报表对象中的哪个节?
四、基本操作题
1.利用报表设计向导创建图书基本信息,要求按照出版社分组,并显示各组图书数量和,效 果如图 5-35 所示。
2.在报表设计视图中创建图书基本信息,要求按照出版社分组,单价递增排序,并显示各组 图书数量和,效果如图 5-35 所示。
3.以出版社为数据源制作一个标签报表,要在报表中显示出版社名称、地址及联系方式,并 美化该报表,为其添加合适的背景图片。
图 5-35 图书信息分组报表
4.创建出版社和图书信息的主/子报表,要求出版社表作为主报表数据源,图书表作为子报表,
如图 5-36 所示
图 5-36 出版社与图书主/子报表 五、设计题
同学们自己建立一个学生管理数据库,设计出前面介绍过的各种报表。