在考生文件夹下存在一个数据库文件“samp3.aecdb”,里面已经设计了表对象“tEmp”、查询对象“qEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。试在此基础上按照以下要求补充设计: (1)消除报表的“性别”排序,重新按照职

admin2017-10-21  45

问题 在考生文件夹下存在一个数据库文件“samp3.aecdb”,里面已经设计了表对象“tEmp”、查询对象“qEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。试在此基础上按照以下要求补充设计:
(1)消除报表的“性别”排序,重新按照职工姓氏进行排列,并在合适页脚区域添加一个文本框控件(命名为tmAge),输出不同姓氏职工的最小年龄值。
说明:这里不考虑复姓情况。
(2)将报表页面页脚区域内名为“&age”的文本框控件设置为“页码/总页数”形式的页码显示(如1/35、2/35、…)。
(3)将“fEmp”窗体上名为“bTitle”的标签上移到距“btnP”命令按钮0.5厘米的位置(即标签的下边界距命令按钮的上边界0.5厘米)。同时,将窗体按钮“btnP”的单击事件属性设置为宏“mEmp"。
(4)在“tEmp”窗体的左侧有一个名称为“COMB01”的组合框和两个名称分别为“bfifle1”“bfifle2”的标签。“btitle1”标签用于显示组合框左侧的标题内容,“bfifle2"标签用于显示计算的平均年龄“COMBO1”组合框中列出性别值“男”和“女”,当在组合框中选择某一性别值后,计算该性别的平均年龄,并将计算的结果显示在“bfifle2”标签中,显示内容及格式如下图所示。请按照VBA代码中的指示将代码补充完整。
[*
注意:不允许修改数据库中的宏对象“mEmp”;不允许修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性;不允许修改表对象“tEmp”和查询对象“qEmp”中未涉及的字段和属性。程序代码只允许在“***Add***”与“***Add***”之间的空行内补充一行语句完成设计,不允许增删和修改其它位置已存在的语句。

选项

答案(1)步骤1:双击“samp3.accdb”数据库,在对象导航窗格中右键单击“rEmp”报表,选择右键菜单“设计视图”,进入报表的设计视图。 步骤2:添加报表排序字段。单击<报表设计工具>选项卡中<分组和汇总>命令组的“分组和排序”命令,在报表下方出现<分组、排序和汇总>设计窗格;单击“添加排序”,选中“排序”依据为“姓名”。 步骤3:添加报表分组字段。由于需要统计不同姓氏职工的最小年龄值,需要对报表主体中的记录进行分组并做统计,因此需要为报表添加组,这里添加组页脚。点击“添加组”按钮,设置“分组形式”为“姓名”字段,“分组方式”为“按第一个字符”,即姓;设置“汇总”选项中“汇总方式”为“年龄”、类型为“最小值”、勾选“在组页脚中显示小计”项;设置“无页眉节”和“有页脚节”。完成设置后的<分组、排序和汇总>设计窗格如图4.9所示。 [*] 步骤4:通过步骤3的设计,在报表中添加了“职务页脚”的组页脚,其中包含了一个统计了不同姓氏职工的最小年龄值的文本框,点击该文本框,在其在<属性表>对话框中修改“名称”为“tmAge”。适当调整“姓名页脚”节的高度。单击<报表设计工具>选项卡中<视图>命令组的“打印预览”命令查看报表打印情况。 步骤5:单击快速访问工具栏中的“保存”按钮。 (2)步骤1:在报表设计视图中,在<属性表>对话框上方的对象选择器中选中“tPage”文本框,在<属性表>对话框内的“控件来源”中输入:=[Page]&”/”&[Pages]。 步骤2:单击“报表设计工具”选项卡中“视图”命令组的“打印预览”命令查看报表页码情况。 步骤3:单击快速访问工具栏中的“保存”按钮。 (3)步骤1:在对象导航窗格中右键单击“fEmp”窗体,选择右键菜单“设计视图”,进入窗体的设计视图。在<属性表>对话框上方的对象选择器中选中“bTitle”标签,看到其高度为1厘米、上边距为2厘米;在<属性表>对话框上方的对象选择器中选中“btnP”按钮,看到其高度为0.7厘米、上边距为2.9厘米。题目要求标签的下边界距命令按钮的上边界0.5厘米,则相当于有如下公式: “bTitle”标签上边距=“btnP”按钮上边距2.9一“bTitle”标签高度1—0.5=1.4厘米 步骤2:在<属性表>对话框上方的对象选择器中选中“bTitle”标签,修改其“上边距”为“1.4cm”。 步骤3:单击快速访问工具栏中的“保存”按钮,关闭代码窗口。 步骤4:单击“btnP”命令按钮控件,单击<属性表>对话框的“事件”选项卡,单击“单击”事件后的向下黑色小箭头,在下拉列表中选择宏名“mEmp”。 步骤5:单击快速访问工具栏中的“保存”按钮,运行窗体,单击“输出”按钮,系统执行宏“mEmp”并以“打印预览”形式打开“rEmp”报表。 (4)步骤l:单击<窗体设计工具>选项卡中<视图>命令组的“设计视图”命令,切换到窗体的设计视图。 步骤2:在<属性表>对话框上方的对象选择器中选中“COMBO1”组合框,单击“事件”选项卡,在“更新后”行内选择“事件过程”,单击“代码生成器”按钮,进入到VBA代码编辑界面。 步骤3:在“***Add1***”之间输入:Me.btitle2.Caption=”性别查询结果:”&Round(DLookup(”平均年龄”,”qEmp",”性别=”’&Me.COMBO 1.Value&…”),5) 说明,通过观察不同性别平均年龄已经通过“qEmp”查询计算得到,所以利用“COMBO1”组合框的值去查询“qEmp”中的相应性别平均年龄:由于“btitle2”标签显示的平均年龄保留小数点后面5位,所以用Round对得到的平均年龄进行四舍五入。 步骤4:在“****Add2****"之间输入: Me.COMrBO 1..AddItem(“男”) Me.COMBO 1.AddItern(“女”) 步骤5:在“****Add3****”之间输入: Me.btitle2.Caption=“性别查询结果:” 步骤5:单击快速访问工具栏中的“保存”按钮,关闭代码窗口。单击<窗体设计工具>选项卡中<视图>命令组的“窗体视图”命令运行窗体,通过选中“COMBOl”组合框的选项查看下方平均年龄的变化。 步骤6:并关闭窗体。关闭“samp3.accdb”窗口。

解析
转载请注明原文地址:https://kaotiyun.com/show/6nMp777K
0

最新回复(0)