ACCESS数据库应用技术》课后习题参考答案(1) 下载本文

击“分组形式”栏的“更多”选项,将显示分组的所有选项。在全部分组选项中,可以设置分组的各种属性。

4.答:子报表是插在其他报表中的报表,包含子报表的报表称为主报表。利用子报表可以将主报表数据源中的数据和子报表数据源中对应的数据同时呈现在一个报表中,从而更加清楚地表现两个数据源中的数据及其联系。

在创建子报表之前,首先要确保主报表数据源和子报表数据源之间已经建立了正确的关联,这样才能保证子报表中的记录与主报表中的记录之间有正确的对应关系。创建子报表有两种方法:利用“子窗体/子报表”控件在已经建好的报表中插入子报表,按“子报表向导”的提示进行操作;先分别建好两个报表,然后将一个报表添加到另一个报表中。

5.答:与页面设置有关。

第7章

一、选择题 1.C 2.A 3.C 4.A 5.D 6.B 7.C 8.C 9.D 10.A 二、填空题 1.操作命令 2.宏 3.排列顺序

4.OpenForm,OpenReport,OpenQuery

5.RunDataMacro 三、问答题

1.答:宏是一种工具,利用宏可以在窗体、报表和控件中添加功能,自动完成某项任务。例如,可以在窗体中的命令按钮上将“单击”事件与一个宏关联,每次单击按钮执行该宏,完成相应的操作。

2.答:数据宏是指依附于表或表事件的宏,其作用是在插入、更新或删除表中的数据时执行某些操作,从而验证和确保表数据的准确性。

3.答:在宏的表达式中引用窗体控件的值,可以用“Forms!窗体名!控件名”,引用报表控件的值,可以用“Reports!报表名!控件名”。

4.答:在Access中,可以直接运行某个宏,也从其他宏中执行宏,还可以通过响应窗体、报表或控件的事件来运行宏。

直接运行宏主要是为了对创建的宏进行调试,以测试宏的正确性。如果要从其他的宏中运行另一个宏,必须在宏设计视图中使用RunMacro宏操作命令,要运行的另一个宏的宏名作为操作参数。通过窗体、报表或控件上发生的“事件”触发相应的宏或事件过程,使之投入运行。

5.答:名称为AutoExec的宏将在打开该数据库时自动运行,如果要取消自动运行,则在打开数据库时按住Shift键即可。

第8章

一、选择题 1.B 2.A 3.A 4.C 5.C 6.A 7.C 8.C 9.B 10.D 二、填空题

1.Int(Rnd*61+15) 2.24

3.局部变量,模块变量,全局变量 4.5 5.RecordSet 6.EOF 三、问答题

1.答:类模块是与类对象相关联的模块,所以也称为类对象模块。类模块是可以定义新对象的模块。新建一个类模块,表示新创建了一个对象,通过类模块的过程可定义对象的属性和方法。Access的类模块有3种基本形式:窗体类模块、报表类模块和自定义类模块。

标准模块是指可在数据库中公用的模块,模块中包含的主要是公共过程和常用过程,这些公用过程不与任何对象相关联,可以被数据库的任何对象使用,可以在数据库的任何位置执行。常用过程是类对象经常要使用的过程,需要多次调用的过程。一般情况下,Access中所说的模块是指标准模块。

类模块一般用于定义窗体、报表中某个控件事件的响应行为,常通过私有的过程来定义。类模块可以通过对象事件操作直接调用。

标准模块一般用来定义数据库、窗体、报表中多次执行的操作,常通过公有的过程来定义,标准模块通过函数过程名来调用。

2.答:在Access中设计窗体,其中有一个文本框、两个按钮,其中“转换”按钮的单击事件代码如下:

Private Sub cmd_convert_Click() Dim v_result As String '结果变量 v_result = \

If Not IsNumeric(Text0.Value) Then MsgBox \输入的不为数值!\ Exit Sub End If

If Len(Text0.Value) <> 3 Then MsgBox \输入的不为3位数!\

End If For i = 1 To 3

v_result = v_result & Mid(Text0.Value, 3 - i + 1, 1) Next i

MsgBox \结果:\End Sub

3.答:VBA代码如下: Private Sub Command1_Click()

x = InputBox(\请输入第一个数x的值\请输入需比较的数\ max = x

y = InputBox(\请输入第二个数y的值\请输入需比较的数\ If y > max Then max = y

z = InputBox(\请输入第三个数z的值\请输入需比较的数\ If z > max Then max = z End Sub

4.答:VBA代码如下: Private Sub Form_Load() End Sub

Private Sub Command5_Click()

m% = InputBox(\请输入欲判断季节的月份的值\注意:只可为1-12之间的整数\ Select Case m Case 2 To 4 ' 春季 Case 5 To 7 '夏季 Case 8 To 10 '秋季 Case 11 To 12, 1 Case Else '无效的月份

End Select End Sub

5.答:VBA代码如下: Private Sub Command1_Click() Dim m As String m = \

For i% = 3 To 99 Step 2 For j% = 2 To i - 1 Lx% = i Mod j If Lx = 0 Then Exit For End If Next If j > i - 1 Then

m = m + \ End If Next End Sub

6.答:(1)在教学管理数据库中,添加一条记录的过程如下。

Sub AddRecord(kc_hao As String, kc_name As String, kc_class As String, kc_score As Integer) Dim rs As New ADODB.Recordset Dim conn As New ADODB.Connection On Error GoTo GetRS_Error

Set conn = CurrentProject.Connection '打开当前连接 rs.Open strSQL, conn, adOpenKeyset, adLockOptimistic rs.AddNew