应用题
考生文件夹 考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计了表对象“tEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。同时,给出窗体对象“fEmp”的若干事件代码,试按以下功能要求补充设计:
【注意】不允许修改数据库中的表对象“tEmp”和宏对象“mEmp”;不允许修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性。
程序代码只允许在“'*****Add*****”与“'*****Add*****”之间的空行内补充一行语句以完成设计,不允许增删和修改其他位置已存在的语句。
问答题
设置系统相关属性,实现打开的窗体以重叠窗口形式显示;设置窗体对象“fEmp”上两个命令按钮的Tab键索引顺序(即Tab键焦点移动顺序)为从“报表输出”按钮(名为“bt1”)到“退出”按钮(名为“bt2”)。
【正确答案】[操作步骤] 步骤1:双击打开“samp3.accdb”数据库,单击“文件”菜单中的“选项”按钮,在弹出的“Access选项”对话框中单击左侧导航窗格中的“当前数据库”选项,然后在右侧对话框的“文档窗口选项”中选中“重叠窗口(0)”单选按钮,单击“确定”按钮,如图所示。 步骤2:选择“窗体”对象,然后右击“fEmp”窗体,在弹出的快捷菜单中选择“设计视图”命令。打开窗体的设计视图。 步骤3:右击“主体”节的任一点,在弹出的快捷菜单中选择“Tab键次序(B)”命令,如图所示,弹出“Tab键次序”对话框。 步骤4:在“自定义次序”区,将鼠标移至最左侧,当鼠标变成向右的箭头时,单击选中“bt1”行,然后按住鼠标左键不放,向上拖动“bt1”,让两按钮的显示顺序为“bt1”“bt2”,单击“确定”按钮,如图所示。 答案考生文件夹
【答案解析】[考点] Access系统属性,在窗体中通过VBA编码和宏命令设置命令按钮的单击事件。在报表中设置字段排序和页码显示。 第(1)、(2)小题在窗体的设计视图中右击该控件属性,对控件属性进行设置;第(4)小题直接右击窗体选择器,选择属性,设置加载事件,在VBA代码编辑页面实现代码编辑;第(3)小题在报表的设计视图中单击分组和排序工具,添加排序。右击控件选择“属性”命令,通过页码函数对控件数据来源进行设置。
问答题
调整窗体对象“fEmp”上的“退出”按钮(名为“bt2”)的大小和位置,要求大小与“报表输出”按钮(名为“bt1”)一致,且上边对齐“报表输出”按钮,左边距离“报表输出”按钮1cm(即“bt2”钮的左边距离“bt1”钮的右边1cm)。
【正确答案】[操作步骤] 步骤1:右击命令按钮“bt2”,在弹出的快捷菜单中选择“属性”命令,然后单击“全部”选项卡,在该选项卡的“宽度”行中输入“2cm”,“高度”行中输入“1cm”,“上边距”行中输入“2cm”,“左边距”行中输入“4.5cm”,如图所示。 步骤2:单击快速工具栏中的“保存”按钮,关闭属性表,关闭“设计视图”。
【答案解析】
问答题
将报表记录数据按照先姓名升序再年龄降序排列显示;设置相关属性,将页面页脚区域内名为“tPage”的文本框控件实现以下格式的页码输出:“1/20”,“2/20”,…,“20/20”。
【正确答案】[操作步骤] 步骤1:选择“报表”对象,右击“rEmp”报表,从弹出的快捷菜单中选择“设计视图”命令,打开报表设计视图。 步骤2:单击“报表设计工具”的“设计”选项卡,然后再单击该选项卡“分组和汇总”组中的“分组和排序”按钮,在工作区的最下端会增加“分组、排序和汇总”的窗口。 步骤3:在该窗口中单击“添加排序”按钮,在“排序依据”行的“选择字段”下拉列表中选择“姓名”字段,在“排序次序”下拉列表中选择“升序”;继续单击“添加排序”按钮,在“排序依据”行的“选择字段”下拉列表中选择“年龄”,在“排序次序”下拉列表中选择“降序”,如图所示。 步骤4:在“页面页脚”区中右击未绑定文本框“tPage”,从弹出的快捷菜单中选择“属性”命令,单击“全部”选项卡,在该选项卡的“控件来源”行中输入“=[Page]&'/'&[Pages]”,如图所示。 步骤5:单击快速工具栏中的“保存”按钮,然后关闭“设计视图”。
【答案解析】
问答题
加载窗体时,代码将“bTitle”标签的标题重置为“员工最大年龄差为×××”,其中“×××”是从“tEmp”表中获取计算得到;单击“报表输出”按钮,事件代码会弹出下图显示的消息框,以选择是否进行预览报表“rEmp”;单击“退出”按钮,调用设计好的宏“mEmp”来关闭窗体。根据以上描述,将VBA代码补充完整。
【正确答案】[操作步骤] 步骤1:选择“窗体”对象,右击“fEmp”窗体,在弹出的快捷菜单中选择“设计视图”命令。打开窗体的设计视图。 步骤2:双击标尺相交的“窗体选择器”,弹出“属性表”对话框,在该对话框中单击“事件”选项卡,然后再单击该选项卡“加载”行的事件生成器按钮,进入VBA代码编辑区。 步骤3:在两个“'*****Add1*****”之间的空白行输入“Me.bTitle.Caption='员工最大年龄差为'&(DMax('年龄','tEmp')-DMin('年龄','tEmp'))”,在两个“'*****Add2*****”之间的空白行输入“If MsgBox('报表预览',vbOKCancel, '标题')=VbOK Then”,如图所示。 步骤4:单击快速工具栏中的“保存”按钮,关闭VBA代码编辑区。 步骤5:右击命令按钮“bt2”,从弹出的快捷菜单中选择“属性”命令,打开“属性表”对话框,在其“事件”选项卡的“单击”属性行中选择“mEmp”,然后关闭“属性表”,如图所示。 步骤6:单击快速工具栏中的“保存”按钮,然后关闭“设计视图”。
【答案解析】