1、国家二级 ACCESS 机试选择题(VBA 编程)模拟试卷 3 及答案解析(总分:60.00,做题时间:90 分钟)一、选择题(总题数:30,分数:60.00)1.下列属于通知或警告用户的命令是(分数:2.00)A.PrintOutB.OutputToC.MsgBoxD.RunWarnings2.VBA 中一般采用 Hungarian 符号法命名变量,代表子窗体的字首码是(分数:2.00)A.subB.RptC.FrntD.txt3.Access 将内置函数分类进行管理,下列选项中,不属于 Access 内置函数分类的是(分数:2.00)A.窗口B.数据库C.数组D.财务4.ODBC 的含义是
2、(分数:2.00)A.开放式数据库连接B.数据库访问对象C.对象链接嵌入数据库D.ActiveX 数据对象5.下列 Access 内置函数中,属于 SQL 聚合函数的是(分数:2.00)A.IntB.FixC.CountD.Chr6.运行下列程序,结果是 Private Sub Command2_Click() f0=1:f1=1:f2=1:k=1 Do While k=4 f=f0+f1+f2 f0=f1 f1=f2 f2=f k=k+2 Loop MsgBox“f=“ f End Sub(分数:2.00)A.f=5B.f=7C.f=8D.f=177.下列程序的输出结果是 Private S
3、ub Command3_Click() t=0 m=1 sum=0 Do t=t+m sum=sum+t m=In+2 Loop While m=5 MsgBox“Sum=“sumEnd Sub(分数:2.00)A.Sum=6B.Sum=10C.Sum=35D.Sum=148.下列代码实现的功能是:若在窗体中一个名为“tNum“的文本框中输入课程编号,则程序要查询“课程表”中对应的“课程名称”,并显示在另一个名为“tName”文本框中, Private Sub tNurn_AfterUpdate() Me!tName=DLookup(“课程名称“,“课程表“,“课程编号=|“) End Sub
4、 下列选项中,不能在程序中处填写的是(分数:2.00)A.Me!tNumB.MetNumC.MetNumD.MetNum9.子过程 Plus 完成对当前库中“教师表”的年龄字段都加 1 的操作。 Sub Plus() Dim cn As New ADODBConnection Dim rs As New ADODBRecordset Dim fd As ADODBField Dim strConnect As String Dim strSQL As String Set cn=CurrentProj ectConnection strSQL=“Select 年龄 from 教师表“ rsOp
5、en strSQL,ca,adOpenDynamic,adLockOptimistic,adCmdText Set fd=rsFields(“年龄“) Do While Not rsEOF fd=fd+1 rsOpdate Loop rsClose caClose Set rs=Nothing Set cn=Nothing End Sub 程序空白处应该填写的语句是(分数:2.00)A.rsMoveNextB.rsMovePreviousC.rsMoveFirstD.rsMoveLast10.Access 中描述若干个操作组合的对象是(分数:2.00)A.表B.查询C.窗体D.宏11.下列关于
6、嵌入宏的叙述中,正确的是(分数:2.00)A.嵌入宏不是独立的对象B.嵌入宏可以在导航窗格中被直接运行C.嵌入宏不能与其被嵌入的对象一起被复制D.同一嵌入宏可以被多个对象调用12.要从指定记录集内获取特定字段的值,应该使用的内置函数是(分数:2.00)A.DLookupB.ChooseC.SwitchD.Trim13.SQL 语句的 Where 子句可以限制表中的记录,完成同样功能的宏命令是(分数:2.00)A.RequeryB.FindRecordC.ApplyFilterD.FindNextRecord14.打开报表后,下列事件中首先发生的是(分数:2.00)A.加载(Load)B.改变(
7、Change)C.调整大小(Resize)D.成为当前(Current)15.当文本框或组合框文本部分的内容发生更改时,发生的事件是(分数:2.00)A.CurrentB.ClickC.ChangeD.MouseMove16.要运行 VBA 的函数过程,应使用宏命令是(分数:2.00)A.RunCommandB.RunAppC.RunCodeD.RunVBA17.VBA 中一般采用 Hungarian 符号法命名变量,代表复选框的字首码是(分数:2.00)A.ChkB.cmdC.FmtD.txt18.Access 对内置函数进行了分类,下列选项中,不属于 Access 内置函数分类的是(分数:
8、2.00)A.窗口B.消息C.文本D.财务19.下列 Access 内置函数中,不属于 SQL 聚合函数的是(分数:2.00)A.AvgB.MinC.CountD.Abs20.下列程序的输出结果是 Dim x As Integer Private Sub Command4_Click() Dim y As Integer x=3 y=10 Call fun(y,x) MsgBox“y=“y End Sub Sub fun(ByRef y As Integer,ByVal z As Integer) y=y+z z=y-z End Sub(分数:2.00)A.y=3B.y=10C.y=13D.y
9、=721.下列程序的输出结果是 Private Sub Command3_Click() t=0 m=1 sum=0 Do t=t+m sum=sum+t m=m+1 Loop While m=5 MsgBox“Sum=“sum End Sub(分数:2.00)A.Sum=6B.Sum=10C.Sum=35D.Sum=1422.下列代码实现的功能是:若在窗体中一个名为 tNum 的文本框中输入课程编号,则将“课程表”中对应的“课程名称”显示在另一个名为 tName 文本框中。 Private Sub() Me!tName=DLookup(“课程名称“,“课程表“,“课程编号=“Me!TNum“
10、) End Sub 程序处应该填写的是(分数:2.00)A.tNurn_AtterUpdateB.tNum_ClickC.tNum_AfterlnsertD.tNam_MouseDown23.子过程 Plus 完成对当前库中“学生表”的年龄字段都加 1 的操作。 Sub Plus() Dim WS As DAOWorkspace Dim db As DAODatabase Dim rs As DAORecordset Dim fd As DAOField Set db=CurrentDb() Set rs=dbOpenRecordset(“学生表“) Set fd=rsFields(“年龄“)
11、 Do While Not rsEOF rsEdit fd=td+1 rsUpdate Loop rsClose dbClose Set rs=Nothing Set db=Nothing End Sub 程序空白处应该填写的语句是(分数:2.00)A.rsMoveNextB.cnMoveNextC.dbMoveNextD.fdMoveNext24.若想取消自动宏的自动运行,打开数据库时应按住(分数:2.00)A.Alt 键B.Shift 键C.Ctrl 键D.Enter 键25.下列关于宏设计的叙述中,错误的是(分数:2.00)A.宏可以包含子宏的设计B.嵌入宏设计不需要设置宏的名称C.宏中
12、的各个子宏之间要有一定的联系D.含有子宏的宏与普通宏的外观无差别26.SQL 语句的 Where 子句可以限制窗体中的记录,完成同样功能的宏命令是(分数:2.00)A.RequcryB.FindRecordC.ApplyFilterD.FindNextRecord27.窗体中的选项卡控件中从一页移到另一页时,发生的事件是(分数:2.00)A.CurrentB.ClickC.ChangeD.MouseMove28.运行 VBA 的函数过程,可使用的宏命令是(分数:2.00)A.RunMacroB.RunSqlC.RunCodeD.RunVBA29.Access 将内置函数分类进行管理,下列选项中
13、,不属于 Access 内置函数分类的是(分数:2.00)A.备注B.算术C.转换D.检查30.下列 Access 内置函数中,属于 SQL 聚合函数的是(分数:2.00)A.SpaceB.SgnC.SqrD.Sum国家二级 ACCESS 机试选择题(VBA 编程)模拟试卷 3 答案解析(总分:60.00,做题时间:90 分钟)一、选择题(总题数:30,分数:60.00)1.下列属于通知或警告用户的命令是(分数:2.00)A.PrintOutB.OutputToC.MsgBox D.RunWarnings解析:解析:消息框(MsgBox)的作用是在对话框中显示消息,等待用户单击按钮,并返回一个
14、整型值告诉用户单击了哪个按钮,所以选项 C 正确。2.VBA 中一般采用 Hungarian 符号法命名变量,代表子窗体的字首码是(分数:2.00)A.sub B.RptC.FrntD.txt解析:解析:Hungarian 符号使用一组代表数据类型的码。用小写字母作为变量名的前缀,“sub”代表子窗体子报表,“Rpt”代表报表,“Fmt”代表窗体,“txt”代表文本框,所以选项 A 正确。3.Access 将内置函数分类进行管理,下列选项中,不属于 Access 内置函数分类的是(分数:2.00)A.窗口 B.数据库C.数组D.财务解析:解析:Access 内置函数分类包括数组、转换、数字、程
15、序流程、应用程序、数据库、域聚合、财务、文本、消息等。所以本题应选择选项 A。4.ODBC 的含义是(分数:2.00)A.开放式数据库连接 B.数据库访问对象C.对象链接嵌入数据库D.ActiveX 数据对象解析:解析:微软公司提供多种方式使用 Access 数据库。主要接口技术:开发式数据库连接(Open Database Connectivity,ODBC)、数据访问对象(Data Access Object,DAO)、对象链接嵌入数据库(Object Linking and EmbeddinR,Database,OLEDB)和 ActiveX 数据对象(ActiveX Data Obje
16、cts,ADO)。所以选项 A 正确。5.下列 Access 内置函数中,属于 SQL 聚合函数的是(分数:2.00)A.IntB.FixC.Count D.Chr解析:解析:SQL 中聚合函数有如下几种:min()某一列最小值;max()某一列最大值;sum()某一列总和;count()所有记录数;count(*)所有非 null 记录数;avg 某一列平均值;所以选项 C 正确。6.运行下列程序,结果是 Private Sub Command2_Click() f0=1:f1=1:f2=1:k=1 Do While k=4 f=f0+f1+f2 f0=f1 f1=f2 f2=f k=k+2
17、 Loop MsgBox“f=“ f End Sub(分数:2.00)A.f=5 B.f=7C.f=8D.f=17解析:解析:本题考查的是:Dowhile 循环执行的过程,此循环在每次执行前会检查条件表达式 k=4是否满足,循环第一次时 k=1,满足条件,执行循环体后,k=3,f=3;执行第二次循环后,k=5,f=5;第三次 k=54,不满足条件循环结束,最终 f=5。所以选择选项 A。7.下列程序的输出结果是 Private Sub Command3_Click() t=0 m=1 sum=0 Do t=t+m sum=sum+t m=In+2 Loop While m=5 MsgBox“S
18、um=“sumEnd Sub(分数:2.00)A.Sum=6B.Sum=10C.Sum=35D.Sum=14 解析:解析:本题考点:dowhile 循环的执行,且该循环至少执行一次。本题循环执行 3 次,第 3 次结束时 m=7,不满足循环的条件,循环终止。根据代码执行的结果 sum=14。因此,所以选择选项 D。8.下列代码实现的功能是:若在窗体中一个名为“tNum“的文本框中输入课程编号,则程序要查询“课程表”中对应的“课程名称”,并显示在另一个名为“tName”文本框中, Private Sub tNurn_AfterUpdate() Me!tName=DLookup(“课程名称“,“课
19、程表“,“课程编号=|“) End Sub 下列选项中,不能在程序中处填写的是(分数:2.00)A.Me!tNumB.MetNumC.MetNum D.MetNum解析:解析:“!”和“”为引用运算符,其中“!”是用来引用集合中由用户定义的一个项,包括打开的窗体、报表等。“”用来引用集合中定义的一个项,即引用窗体或控件的属性。tNum 为一个控件,是用户自定义的项,可以使用 Me 代表当前窗体对象,使用 Me!控件名或 Me控件名均可以,但是不能使用 Me控件名的形式,所以应选择选项 C。9.子过程 Plus 完成对当前库中“教师表”的年龄字段都加 1 的操作。 Sub Plus() Dim
20、cn As New ADODBConnection Dim rs As New ADODBRecordset Dim fd As ADODBField Dim strConnect As String Dim strSQL As String Set cn=CurrentProj ectConnection strSQL=“Select 年龄 from 教师表“ rsOpen strSQL,ca,adOpenDynamic,adLockOptimistic,adCmdText Set fd=rsFields(“年龄“) Do While Not rsEOF fd=fd+1 rsOpdate L
21、oop rsClose caClose Set rs=Nothing Set cn=Nothing End Sub 程序空白处应该填写的语句是(分数:2.00)A.rsMoveNext B.rsMovePreviousC.rsMoveFirstD.rsMoveLast解析:解析:本题考查的是如何使用 ADO 数据库技术操作数据库。其中,RecordSet 对象 rs 是用来表示来自基本表或命令执行结果的记录集。rs 更新完一条记录之后,需要使指针往后移动下一个记录上(注:MoveNext,移动到下一个记录的位置)。所以选择选项 A。10.Access 中描述若干个操作组合的对象是(分数:2.0
22、0)A.表B.查询C.窗体D.宏 解析:解析:宏是由一个活多个操作组成的集合,其中每个操作均能够实现特定的功能。11.下列关于嵌入宏的叙述中,正确的是(分数:2.00)A.嵌入宏不是独立的对象 B.嵌入宏可以在导航窗格中被直接运行C.嵌入宏不能与其被嵌入的对象一起被复制D.同一嵌入宏可以被多个对象调用解析:解析:嵌入宏和独立宏不同,因为它们存储在窗体、报表或控件的事件属性中。与其他宏不同的是,嵌入宏并不作为对象显示在“导航窗体”中的“宏”下面。所以选择选项 A。12.要从指定记录集内获取特定字段的值,应该使用的内置函数是(分数:2.00)A.DLookup B.ChooseC.SwitchD.
23、Trim解析:解析:DLookup 函数是从指定记录集里检索特定字段的值。它可以直接在 VBA、宏、查询表达式或计算控件中使用,而且主要用于检索来自外部表(而非数据源表)字段的值,所以选项 A 正确。13.SQL 语句的 Where 子句可以限制表中的记录,完成同样功能的宏命令是(分数:2.00)A.RequeryB.FindRecordC.ApplyFilter D.FindNextRecord解析:解析:“ApplyFilter”宏操作可以对表、窗体或报表应用筛选、查询或“SQL WHERE”子句,以便限制或排序表、基础表以及窗体或报表的查询中的记录,所以选项 C 正确。14.打开报表后,
24、下列事件中首先发生的是(分数:2.00)A.加载(Load) B.改变(Change)C.调整大小(Resize)D.成为当前(Current)解析:解析:Current 事件是在窗体打开时,以及焦点从一条记录移动到另一条记录时发生;Activate 是当一个对象成为活动窗口时发生的事件;Change 是指文本框或组合框的部分内容改变时发生的事件;GotFocus 指窗体或控件获得焦点时发生的事件。以上四个事件,只有激活是打开窗体后最先发生的。15.当文本框或组合框文本部分的内容发生更改时,发生的事件是(分数:2.00)A.CurrentB.ClickC.Change D.MouseMove解
25、析:解析:当文本框或组合框的文本部分的内容更改时,将发生 Change 事件,所以选项 C 正确。16.要运行 VBA 的函数过程,应使用宏命令是(分数:2.00)A.RunCommandB.RunAppC.RunCode D.RunVBA解析:解析:RunCode 宏用于调用 VB 的 Function 过程,所以选项 C 正确。17.VBA 中一般采用 Hungarian 符号法命名变量,代表复选框的字首码是(分数:2.00)A.Chk B.cmdC.FmtD.txt解析:解析:Hungarian 符号使用一组代表数据类型的码。用小写字母作为变量名的前缀,“Chk”代表复选框,“cmd”代
26、表命令按钮,“Fmt”代表窗体,“tt”代表文本框,所以选项 A 正确。18.Access 对内置函数进行了分类,下列选项中,不属于 Access 内置函数分类的是(分数:2.00)A.窗口 B.消息C.文本D.财务解析:解析:Access 内置函数分类包括数组、转换、数字、程序流程、应用程序、数据库、域聚合、财务、文本、消息等,所以选择选项 A。19.下列 Access 内置函数中,不属于 SQL 聚合函数的是(分数:2.00)A.AvgB.MinC.CountD.Abs 解析:解析:Access 内置函数中域聚合函数包括 DAvg、DCount、DFirst、DLookup、DMax、Dm
27、in 等,Abs是求绝对值函数,不是域聚合函数,所以选择选项 D。20.下列程序的输出结果是 Dim x As Integer Private Sub Command4_Click() Dim y As Integer x=3 y=10 Call fun(y,x) MsgBox“y=“y End Sub Sub fun(ByRef y As Integer,ByVal z As Integer) y=y+z z=y-z End Sub(分数:2.00)A.y=3B.y=10C.y=13 D.y=7解析:解析:在函数参数传递中,包括按地址传递 ByRef 和按值传递 ByVal 两种方法。其中前
28、者在函数体内改变变量值会影响参数外的变量,后者不会。本题 y 是按地址传递,调用 fun()函数后,会将 Y 的值改为 fun()函数中 V 的值,所以应选择选项 C。21.下列程序的输出结果是 Private Sub Command3_Click() t=0 m=1 sum=0 Do t=t+m sum=sum+t m=m+1 Loop While m=5 MsgBox“Sum=“sum End Sub(分数:2.00)A.Sum=6B.Sum=10C.Sum=35 D.Sum=14解析:解析:本题考查的是 dowhile 循环的执行,该循环至少执行一次。本题循环执行 5 次,第 5 次结束
29、时 m=6,不满足循环的条件,因此循环终止。此时代码执行的结果为 sum=35,所以应选择选项 C。22.下列代码实现的功能是:若在窗体中一个名为 tNum 的文本框中输入课程编号,则将“课程表”中对应的“课程名称”显示在另一个名为 tName 文本框中。 Private Sub() Me!tName=DLookup(“课程名称“,“课程表“,“课程编号=“Me!TNum“) End Sub 程序处应该填写的是(分数:2.00)A.tNurn_AtterUpdate B.tNum_ClickC.tNum_AfterlnsertD.tNam_MouseDown解析:解析:本题考查的是变量标识符的
30、命名规则。标识符的名字以一个或者多个小写字母开头作为前缀;之后接第一个单词的首字母大写或者多个单词的组合,且该单词要指明变量的用途。本题是根据输入 Num然后(After)更新(Update)tName 内容,所以选择选项 A。23.子过程 Plus 完成对当前库中“学生表”的年龄字段都加 1 的操作。 Sub Plus() Dim WS As DAOWorkspace Dim db As DAODatabase Dim rs As DAORecordset Dim fd As DAOField Set db=CurrentDb() Set rs=dbOpenRecordset(“学生表“)
31、Set fd=rsFields(“年龄“) Do While Not rsEOF rsEdit fd=td+1 rsUpdate Loop rsClose dbClose Set rs=Nothing Set db=Nothing End Sub 程序空白处应该填写的语句是(分数:2.00)A.rsMoveNext B.cnMoveNextC.dbMoveNextD.fdMoveNext解析:解析:本题考查的是如何使用 ADO 数据库技术操作数据库。其中,RecordSet 对象 rs 是用来表示来自基本表或命令执行结果的记录集。rs 更新完一条记录之后,需要使指针往后移动下一个记录上(注:M
32、oveNext,移动到下一个记录的位置),所以应选择选项 A。24.若想取消自动宏的自动运行,打开数据库时应按住(分数:2.00)A.Alt 键B.Shift 键 C.Ctrl 键D.Enter 键解析:解析:取消自动运行宏,打开数据库时按住 Shift 键即可,所以本题选项 B 正确。25.下列关于宏设计的叙述中,错误的是(分数:2.00)A.宏可以包含子宏的设计B.嵌入宏设计不需要设置宏的名称C.宏中的各个子宏之间要有一定的联系 D.含有子宏的宏与普通宏的外观无差别解析:解析:宏是由一个或多个操作组成的集合,其中每个操作都实现特定的功能。如果要在一个位置上将几个相关的宏构成组,而不希望对其
33、单个追踪,可以将它们组织起来构成一个宏组,宏组中的各个宏之间不设置并联。保存宏组时,指定的名字是宏组的名字,所以选项 C 错误。26.SQL 语句的 Where 子句可以限制窗体中的记录,完成同样功能的宏命令是(分数:2.00)A.RequcryB.FindRecordC.ApplyFilter D.FindNextRecord解析:解析:“ApplyFilter”宏操作可以对表、窗体或报表应用筛选、查询或“SQL WHERE”子句,以便限制或排序表、基础表以及窗体或报表的查询中的记录,所以选项 C 正确。27.窗体中的选项卡控件中从一页移到另一页时,发生的事件是(分数:2.00)A.Curr
34、entB.ClickC.Change D.MouseMove解析:解析:当窗体中的“选项卡”控件中从一页移到另页时,将发生 Change 事件。28.运行 VBA 的函数过程,可使用的宏命令是(分数:2.00)A.RunMacroB.RunSqlC.RunCode D.RunVBA解析:解析:RunCode 宏用于调用 VB 的 Function 过程,所以选项 C 正确。29.Access 将内置函数分类进行管理,下列选项中,不属于 Access 内置函数分类的是(分数:2.00)A.备注 B.算术C.转换D.检查解析:解析:Access 内置函数分类包括数组、转换、数字、程序流程、应用程序、数据库、域聚合、财务等,所以应选择选项 A。30.下列 Access 内置函数中,属于 SQL 聚合函数的是(分数:2.00)A.SpaceB.SgnC.SqrD.Sum 解析:解析:Access 内置函数中域聚合函数包括 DAvg、DCount、DFirst、DLookup、DMax、Dmin 等。Space 函数为生成空格字符函数;Sgn 函数为符号函数;sqr 为开平方根函数,所以选择选项 D。