代码题66-57套解析(全彩版)

更新时间:2024-05-10 10:58:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

简单应用部分代码题题面及答案

14套(3)补充窗体\上\按钮(名为\)的单击事件代码,实现以下功能:打开窗体,

在文本框\中输入一段文字,然后单击窗体\上\按钮(名为\),程序实现将文本框内容作为窗体上标签\的标题显示。 注意:不允许修改窗体对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计。 Option Compare Database Private Sub bt1_Click()

'*****Add*****

Me.bTitle.Caption = Me.tText

'*****Add*****

End Sub

22套(3)补充窗体\上\按钮(名为\)的单击事件代码,实现以下功能:

打开窗体,在文本框\中输入一段文字,然后单击窗体\上\按钮(名为\),补充代码设置窗体上标签\的标题为文本框\输入内容与文本串\等级考试测试\的连接并消除连接串的前导和尾随空白字符;

注意:不允许修改窗体对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计。 Option Compare Database Private Sub bt1_Click()

'*****Add1*****

bTitle.Caption = Trim(tText + \等级考试测试\

'*****Add1*****

End Sub

16.3(5)设置所建命令按钮bC的单击事件,使用户单击该命令按钮后,CDID标签的显示颜色改为红色。要求用VBA代码实现。 注意:不允许修改窗体对象\中未涉及的控件和属性;不允许修改表对象\和查询对象\。

本题相关知识点:ForeColor 前景颜色 ; 255 红色代码 Private Sub bC_Click()

CDID_标签.ForeColor = 255 标签(CDID_标签) . 前景颜色(ForeColor)=255(红色代码) End Sub

18.2(3)补充窗体\上\按钮(名为\)的单击事件代码,实现以下功能:打开窗体,在文本框\中输入一段文字,然后单击窗体\上\按钮(名为\),程序实现将文本框内容作为窗体上标签\的标题显示。 注意:不允许修改窗体对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计。 本题相关知识点:Caption 显示标题 Private Sub bt1_Click() '*****Add*****

bTitle.Caption=tText 标签(bTitle)的. 显示标题(Caption)=来自文本框(tText)中输入的内容 '*****Add***** End Sub

23.3.(4)单击\刷新\按钮(名为\),事件过程动态设置窗体记录源为查询对象\,实现窗体数据按性别条件动态显示;单击\退出\按钮(名为\),关闭窗体。

注意:不允许修改数据库中的表对象\;不允许修改查询对象\中未涉及的内容;不允许修改窗体对象\中未涉及的控件和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:RecordSource 记录源 Private Sub bt1_Click()

'动态设置窗体记录源属性 '*****Add1*****

RecordSource=”qEmp” 窗体或报表的记录源(RecordSource)是来自哪个表或查询=表名或查询 '*****Add1***** 名(“qEmp”就是本题中要求作为记录来源的表名)(注意:表名或查询 '刷新窗体 名必须加“ ” ) Me.Requery End Sub

Private Sub bt2_Click() '关闭窗口

'*****Add2*****

DoCmd.Close 关闭窗体、报表、表都用固定语句:DoCmd.Close '*****Add2***** End Sub 24.3. (5)在窗体中有一个\显示全部记录\命令按钮(名称为bList),单击该按钮后,应实现将\表中的全部记录显示出来的功能。现已编写了部分VBA代码,请按照VBA代码中的指示将代码补充完整。 要求:修改后运行该窗体,并查看修改结果。 注意:不允许修改窗体对象\和\中未涉及的控件、属性;不允许修改表对象\。对于VBA代码,只允许\与\之间的一空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。

本题相关知识点:select语句格式:select 字段列表 from 表名 Private Sub Command4_Click()

BBB.Form.RecordSource = \姓名 like '\End Sub

Private Sub bList_Click()

'***** 请在下面双引号内添入适当的SELECT语句 ****'

BBB.Form.RecordSource = \ select * from tStudent “ 选择(select) 通配符星号(*)所有记录来 '************************************************' 自于(from) 表名(tStudent) [Text2] = \End Sub

Private Sub 命令7_Click() DoCmd.Close End Sub

25.3.(5)在窗体中有一个\退出\命令按钮(名称为bQuit),单击该按钮后,应关闭\窗体。现已编写了部分VBA代码,请按照VBA代码中的指示将代码补充完整。 要求:修改后运行该窗体,并查看修改结果。

注意:不允许修改窗体对象\和\中未涉及的控件、属性;不允许修改表对象\和\。对于VBA代码,只允许\与\之间的一空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:关闭窗体 DoCmd.Close Private Sub bQuit_Click()

'*********** 请在下面填入一行语句 ***********'

DoCmd.Close 关闭窗体、报表、表都用固定语句:DoCmd.Close '********************************************' End Sub

26.2.(3)补充窗体\上\按钮(名为\)的单击事件代码,实现以下功能:

打开窗体,在文本框\中输入一段文字,然后单击窗体\上\按钮(名为\),补充代码设置窗体上标签\的标题为文本框\输入内容与文本串\等级考试测试\的连接并消除连接串的前导和尾随空白字符;

注意:不允许修改窗体对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计。 本题相关知识点:Trim 去前后空格 Private Sub bt1_Click() '*****Add1*****

bTitle.Caption= Trim (tText+”等级考试测试”) 标签的(bTitle). 显示标题(Caption)=去前后空 '*****Add1***** 格(Trim)(文本框(tText)中输入的内容+ 固定的 End Sub 字符串“等级考试测试”)

26.3 (5)在窗体中还有\修改\和\保存\两个命令按钮,名称分别为\和\,其中\保存\命令按钮在初始状态为不可用,当单击\修改\按钮后,应使\保存\按钮变为可用。现已编写了部分VBA代码,请按照VBA代码中的指示将代码补充完整。 要求:修改后运行该窗体,并查看修改结果。

注意:不允许修改窗体对象\和\中未涉及的控件、属性;不允许修改表对象\和

\。对于VBA代码,只允许在\与\之间的一空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:Enabled 可用性 Private Sub CmdEdit_Click() 用户名_1.Enabled = True Me!Lremark.Visible = True Me!口令_1.Visible = True Me!备注_1.Visible = True Me!tEnter.Visible = True

'**************** 请在下面添加一条语句 ****************' CmdSave.Enabled= True 命令按钮de(CmdSave) . 可用性(Enabled)=可用(可用就是真值True) '******************************************************' End Sub

Private Sub cmdquit_Click() DoCmd.Close End Sub

Private Sub CmdSave_Click() If Me!口令_1 = Me!tEnter Then

DoCmd.RunSQL (\用户名='\用户名_1 & \用户名='\Me!用户名_1 & \

DoCmd.RunSQL (\口令='\口令_1 & \用户名='\用户名_1 & \

DoCmd.RunSQL (\备注='\备注_1 & \用户名='\用户名_1 & \

Forms!fEdit.Refresh

DoCmd.GoToControl \ CmdSave.Enabled = False Me!用户名_1 = Me!用户名 Me!口令_1 = Me!口令 Me!备注_1 = Me!备注 Me!tEnter = \

Me!用户名_1.Enabled = False

Me!口令_1.Visible = False Me!备注_1.Visible = False Me!tEnter.Visible = False Me!Lremark.Visible = False Else

MsgBox \请重新输入口令!\ End If End Sub

Private Sub Form_Load() Me!用户名_1 = Me!用户名 Me!口令_1 = Me!口令 Me!备注_1 = Me!备注 End Sub

27.3 .(4)按照以下窗体功能,补充事件代码设计。

窗体功能:打开窗体、单击\计算\按钮(名为bt),事件过程使用ADO数据库技术计算出表对象\中党员职工的平均年龄,然后将结果显示在窗体的文本框\内并写入外部文件中。 注意:不允许修改数据库中表对象\未涉及的字段和数据;不允许修改窗体对象\中未涉及的控件和属性。代码设计只允许在\与\之间的空行内填补一行语句、完成设计,不允许增删和修改其它位置已存在的语句。程序必须运行并生成外部文件(out.dat)后才能得分。 本题相关知识点:EOF 文件结束 Private Sub bt_Click()

Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim strSQL As String Dim sage As Single '设置当前数据库连接

Set cn = CurrentProject.Connection

strSQL = \年龄) from tEmp where 党员否\ rs.Open strSQL, cn, adOpenDynamic, adLockOptimistic '*****Add1*****

If rs. EOF Then 如果(If)记录集de(rs) . 遍历结束(EOF) 那么(Then) '*****Add1***** 那么会执行下边的语句。 MsgBox \无党员职工的年龄数据\ sage = 0 Exit Sub Else

sage = rs.Fields(0) End If

'*****Add2*****

tAge = sage 平均年龄(tAge)赋值给=文本框(sage) '*****Add2***** rs.Close cn.Close

Set rs = Nothing Set cn = Nothing

'以下是外部文件写入操作

If Dir(CurrentProject.Path & \ Kill CurrentProject.Path & \ End If

Open CurrentProject.Path & \ Print #1, sage Close #1 End Sub

28.3 .(4)单击\退出\按钮(名为\),关闭窗体。补充事件代码。

注意:不允许修改数据库中的表对象\;不允许修改查询对象\中未涉及的内容;不允许修改窗体对象\中未涉及的控件和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点: DoCmd.Close 关闭窗体 Private Sub bt1_Click() '刷新窗体 Me.Requery End Sub

Private Sub bt2_Click() '关闭窗口

'*****Add*****

DoCmd.Close 关闭窗体的语句是:DoCmd.Close '*****Add***** End Sub

30.3.(5)在窗体中还有\修改\和\保存\两个命令按钮,名称分别为\和\,其中\保存\命令按钮在初始状态为不可用,当单击\修改\按钮后,\保存\按钮变为可用,同时在窗体的左侧显示出相应的信息和可修改的信息。如果在\口令\文本框中输入的内容与在\确认口令\文本框中输入的内容不相符,当单击\保存\按钮后,屏幕上应弹出如下图所示的提示框。现已编写了部分VBA代码,请按照VBA代码中的指示将代码补充完整。

要求:修改后运行该窗体,并查看修改结果。

注意:不允许修改窗体对象\和\中未涉及的控件、属性;不允许修改表对象\和\。只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:MsgBox 消息框 Private Sub CmdEdit_Click() 用户名_1.Enabled = True Me!Lremark.Visible = True Me!口令_1.Visible = True Me!备注_1.Visible = True Me!tEnter.Visible = True CmdSave.Enabled = True End Sub

Private Sub cmdquit_Click() DoCmd.Close End Sub

Private Sub CmdSave_Click() If Me!口令_1 = Me!tEnter Then

DoCmd.RunSQL (\用户名='\用户名_1 & \用户名='\

Me!用户名_1 & \

DoCmd.RunSQL (\口令='\口令_1 & \用户名='\用户名_1 & \

DoCmd.RunSQL (\备注='\备注_1 & \用户名='\用户名_1 & \

Forms!fEdit.Refresh

DoCmd.GoToControl \ CmdSave.Enabled = False Me!用户名_1 = Me!用户名 Me!口令_1 = Me!口令 Me!备注_1 = Me!备注 Me!tEnter = \

Me!用户名_1.Enabled = False Me!口令_1.Visible = False Me!备注_1.Visible = False Me!tEnter.Visible = False Me!Lremark.Visible = False Else

'*************************Add*************************'

MsgBox “请重新输入口令!” 消息框(MsgBox)的固定格式:MsgBox “要提示的消息内容” '*************************Add*************************'注意:提示的内容中有标点符号一定要打 End If 上,而且是在输入法状态输入。MsgBox End Sub 后边接的是双引号“” Private Sub Form_Load() Me!用户名_1 = Me!用户名 Me!口令_1 = Me!口令 Me!备注_1 = Me!备注 End Sub

31.3 .(4)试根据以下窗体功能要求,对已给的命令按钮事件过程进行补充和完善。在\窗体上单击\输出\命令按钮(名为\),弹出一输入对话框,其提示文本为\请输入大于0的整数值\。 输入 1 时,相关代码关闭窗体(或程序);

输入 2 时,相关代码实现预览输出报表对象\;

输入 >=3 时,相关代码调用宏对象\以打开数据表\。 注意:不允许修改数据库中的宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;不允许修改表对象\中未涉及的字段和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:DoCmd.OpenReport 打开报表 ;InputBox 输入框 Private Sub btnP_Click() Dim k As String '*****Add1*****

K=InputBox(“请输入大于0的整数值” ) 输入框(InputBox)的固定格式:要输入的内容=inputbox(“提 '*****Add1***** 示内容”)注意:提示的内容中有标点符号一定要打上,而且是 If k = \在输入法状态输入。InputBox后边接的是小括号里包含双引 Select Case Val(k) 号。(“”) Case Is >= 3

DoCmd.RunMacro \ Case 2

'*****Add2*****

DoCmd.OpenReport “rEmp”,acViewPreview DoCmd.对象 (DoCmd .)打开报表(OpenReport)

'*****Add2***** 报表名称必须加双引号(“rEmp”) ,并以预 Case 1 览(acViewPreview)方式输出。 DoCmd.Close End Select End Sub

32.3.(4)试根据以下窗体功能要求,对已给的命令按钮事件过程进行补充和完善。在\窗体上单击\输出\命令按钮(名为\),弹出一输入对话框,其提示文本为\请输入大于0的整数值\。 输入 1 时,相关代码关闭窗体(或程序);

输入 2 时,相关代码实现预览输出报表对象\;

输入 >=3 时,相关代码调用宏对象\以打开数据表\。 注意:不允许修改数据库中的宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;不允许修改表对象\中未涉及的字段和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:Case语句是依次测试的,并执行第一个符合Case条件的相关的程序代码后,即使再有其他符合条件的分支也不会再执行,然后程序继续向下执行,即从接在End Select终止语句的下一行程序继续执行下去。;ADOrs .EOF=False 记录集没有结束的表达式 Private Sub btnP_Click() Dim k As String

k = InputBox(\请输入大于0的整数值\If k = \Select Case Val(k) '*****Add1*****

Case Is >=3 如果输入的整数值满足于>=3这个条件 执行下边语句。 '*****Add1*****

DoCmd.RunMacro \ Case 2

'*****Add2*****

DoCmd.OpenReport “rEmp”,acViewPreview DoCmd.对象 (DoCmd .)打开报表

'*****Add2***** 报表名称必须加双引号(“rEmp”) ,并以预 Case 1 览(acViewPreview)方式输出。 DoCmd.Close End Select End Sub

33.3 .(4)按照以下窗体功能,补充事件代码设计。

在窗体的四个文本框内输入合法的职工信息后,单击\追加\按钮(名为bt1),程序首先判断职工编号是否重复,如果不重复则向表对象\中添加职工纪录,否则出现提示;当点击窗体上的\退出\按钮(名为bt2)时,关闭当前窗体。 注意:不允许修改表对象\中未涉及的结构和数据;不允许修改窗体对象\中未涉及的控件和属性;代码设计只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。

本题相关知识点:ADOrs .EOF=False 记录集没有结束的表达式 Private Sub bt1_Click()

Dim ADOcn As New ADODB.Connection Dim ADOrs As New ADODB.Recordset Dim strDB As String '建立连接

Set ADOcn = CurrentProject.Connection ADOrs.ActiveConnection = ADOcn

ADOrs.Open \编号 From tEmp Where 编号='\adLockReadOnly

'*****Add1*****

If ADOrs .EOF=False Then 如果(If)记录集(ADOrs .)文件结束(EOF)=没有结束 '*****Add1***** (False) 那么(Then) 执行下列的语句 MsgBox \该编号已存在,不能追加!\ Else

strSQL = \编号,姓名,性别,年龄)\

strSQL = strSQL + \ ADOcn.Execute strSQL

MsgBox \添加成功,请继续!\ End If

ADOrs.Close ADOcn.Close

Set ADOrs = Nothing Set ADOcn = Nothing End Sub

Private Sub bt2_Click() '*****Add2*****

DoCmd .Close 关闭窗体(DoCmd .Close) '*****Add2***** End Sub 35.3 .(4)\窗体上单击\输出\命令按钮(名为\),实现以下功能:计算Fibonacci数列第19项的值,将结果显示在窗体上名为\的文本框内并输出到外部文件保存;单击\打开表\命令按钮(名为\),调用宏对象\以打开数据表\。 Fibonacci数列:

调试完毕,必须点击\输出\命令按钮生成外部文件,才能得分。

试根据上述功能要求,对已给的命令按钮事件过程进行补充和完善。 注意:不允许修改数据库中的宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;不允许修改表对象\中未涉及的字段和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:Dim f(19) As Integer 定义数列的第十九项值是整型 Private Sub btnP_Click() Dim i As Integer Dim s As Integer '*****Add1*****

Dim f(19) As Integer 定义((Dim )数列第十九项的数值( f(19)) 是( As) 整型 (Integer) '*****Add1***** f(1) = 1: f(2) = 1 For i = 3 To 19

'*****Add2*****

f(i) = f(i-1) + f(i-2)) 按题中的公式Fn=Fn-1+Fn-2得出:( f(i) = f(i-1) + f(i-2))) '*****Add2***** Next i

'数据输出到文本框内 '*****Add3*****

tData = f(19) 文本框(tData)里显示的值 = 数列第19项的值(f(19)) '*****Add3***** '以下是文件操作

If Dir(CurrentProject.Path & \ Kill CurrentProject.Path & \ End If

Open CurrentProject.Path & \ Print #1, Me!tData Close #1 End Sub

36.3.(5)窗体加载时设置窗体标题属性为系统当前日期。窗体\加载\事件代码已提供,请补充完整。 注意:不允许修改窗体对象\中未涉及的控件和属性;不允许修改表对象\、\和\及查询对象\;不允许修改报表对象\的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。

本题相关知识点: 在VBA代码编程里,Date()后面的()会自动省略,变成Date 也是系统当前日期的意思 Private Sub Form_Load() '设置窗体标题为当前日期 '*****Add*****

Caption=Date 窗体的标题显示(Caption)=当前系统日期(Date) '*****Add***** End Sub 37.3.(3)在窗体\的\加载\事件中设置标签\以红色文本显示;单击\预览\按钮(名为\)或\打印\按钮(名为\),事件过程传递参数调用同一个用户自定义代码(mdPnt)过程,实现报表预览或打印输出;单击\退出\按钮(名为\),调用设计好的宏\来关闭窗体。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:mdPnt是题中给出的用户自定义代码 Private Sub Form_Load()

'设置bTitle标签为红色文本显示 '*****Add1*****\

bTitle.ForeColor = 255 标签(bTitle). 文字的显示前景颜色(ForeColor) = 红色代 '*****Add1*****\ 码(255) End Sub '预览输出

Private Sub bt1_Click() '*****Add2*****\

mdPnt ,acViewPreview 用户自定义代码(mdPnt).并以预览(mdPnt acViewPreview) '*****Add2*****\ 形式输出 End Sub '打印输出

Private Sub bt2_Click() mdPnt acViewNormal End Sub '输出过程

Private Sub mdPnt(flag As Integer) '按照参数条件输出

DoCmd.OpenReport \End Sub

38.3.(4)单击\刷新\按钮(名为\),事件过程动态设置窗体记录源为查询对象\,实现窗体数据按性别条件动态显示退休职工的信息;单击\退出\按钮(名为\),调用设计好的宏\来关闭窗体。 注意:不允许修改数据库中的表对象\和宏对象\;不允许修改查询对象\中未涉及的属性和内容;不允许修改窗体对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点: RecordSource 记录源 Private Sub bt1_Click()

'动态设置窗体记录源属性 '*****

RecordSource = “qEmp” 记录源(RecordSource)来自于=查询对象名称(注意必须加 '***** 双引号)(“qEmp”) '刷新窗体 Me.Requery End Sub

40.3.(5)在\窗体页眉\中距左边0.5厘米,上边0.3厘米处添加一个标签控件,控件名称为\,标题为\系统日期\。窗体加载时,将添加标签标题设置为系统当前日期。窗体\加载\事件已提供,请补充完整。 注意:不允许修改窗体对象\中未涉及的控件和属性;不允许修改表对象\和宏对象\。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。

本题相关知识点:Caption 显示标题 ; DoCmd.RunMacro “m1” 运行名字为m1的宏 Private Sub 命令17_Click()

On Error GoTo Err_命令17_Click

Screen.PreviousControl.SetFocus DoCmd.FindNext Exit_命令17_Click: Exit Sub

Err_命令17_Click:

MsgBox Err.Description Resume Exit_命令17_Click End Sub

Private Sub bList_Click() '设置代码执行宏 '*****Add2*****

DoCmd.RunMacro “m1” 调用已经设计好的宏命令:DoCmd.对象(DoCmd .)调用宏命令 '*****Add2***** (RunMacro)宏名必须加双引号( “m1”)) End Sub

Private Sub Form_Load() '设置标签标题为系统日期 '*****Add1*****

Tda.Caption = Date 标签(Tda). 显示标题(Caption) = 当前系统日期(Date) '*****Add1***** End Sub

41.3.(4)窗体加载时将考生文件夹下的图片文件\设置为窗体\的背景。窗体\加载\事件代码已提供,请补充完整。要求背景图像文件当前路径必须用CurrentProject.Path获得。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:CurrentProject . Path 本题给出的路径 Private Sub Form_Load() '设置窗体背景图片 '*****Add*****

Picture = CurrentProject . Path + “\\test.bmp” 要获取的图片函数(Picture)=背景图像文 '*****Add***** 件当前路径CurrentProject . Path + 要获取 End Sub 的图片名称前边必须加\\(“\\test.bmp”)

42.3.(4)窗体加载时设置窗体标题属性为\年职工信息输出\,其中****为系统当前年。窗体\加载\事件代码已提供,请补充完整。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点:& 强连接符 ;窗体显示标题直接用Caption表示 Private Sub Form_Load()

'设置窗体标题形式,如当前年为2008,则显示为“2008年职工信息输出” '*****Add*****

Caption = Year(Date) & “年职工信息输出” 窗体的显示标题(Caption)为 = 当前年

'*****Add***** (Year(Date))强连接符 连接(&)题中给的固定 End Sub 字符串( “年职工信息输出”)

44.3.(4)单击窗体\报表输出\按钮(名为\),调用事件代码实现以预览方式打开报表\;单击\退出\按钮(名为\),调用设计好的宏\来关闭窗体。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。 本题相关知识点: acViewPreview 预览输出 Private Sub bt1_Click() '预览方式输出报表rEmp '*****Add*****

DoCmd . OpenReport “rEmp” ,acViewPreview DoCmd . 打开报表(OpenReport) 报表 '*****Add***** 的名称必须加双引号(“rEmp”),并以预览形 End Sub 式输出( acViewPreview)

45.3.(4)单击\报表输出\按钮(名为\),事件代码会弹出以下图例显示的消息框提示,选择是否进行预览报表\;单击\退出\按钮(名为\),调用设计好的宏\来关闭窗体。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性。程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。

本题相关知识点:MsgBox 消息框 ; vbYesNo 是否按钮; vbQuestion 问号 ; vbYes 按钮是

Private Sub bt1_Click()

'消息框提示报表输出(外观样式见题干图例) '*****Add***** If MsgBox(\报表预览\vbYesNo + vbQuestion, \确认\= vbYes Then 如果(If)消息框(MsgBox) '*****Add***** (显示提示内容“报表预览” ,是否按钮(vbYesNo)+问号(vbQuestion), '预览方式输出报表rEmp 标题内容(\确认\))=是(vbYes) 那么(Then) DoCmd.OpenReport \ End If End Sub

46.3.(5)在窗体中有一个\退出\命令按钮,名称为\,其功能为关闭\窗体。请按照VBA代码中的指示将实现此功能的代码填入指定的位置中。

注意:不允许修改窗体对象\中未涉及的控件、属性和任何VBA代码;不允许修改表对象\;程序代码只允许在\与\之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。

答案:选择\文本框,设置\控件来源\属性为\学号],5,2)=\信息\管理\。 选择\窗体,点击\加载\属性右边的\?\打开代码生成器,在'*****Add*****与'*****Add*****之间输入:DoCmd.Close,保存窗体。

本题相关知识点: DoCmd.Close 关闭窗体 Private Sub cmdQuit_Click() '*****Add*****

DoCmd.Close 关闭窗体 DoCmd.Close '*****Add***** End Sub

Private Sub Command34_Click()

On Error GoTo Err_Command34_Click DoCmd.GoToRecord , , acFirst Exit_Command34_Click: Exit Sub

Err_Command34_Click:

MsgBox Err.Description

Resume Exit_Command34_Click End Sub

Private Sub Command35_Click()

On Error GoTo Err_Command35_Click DoCmd.GoToRecord , , acPrevious Exit_Command35_Click: Exit Sub

Err_Command35_Click:

MsgBox Err.Description

Resume Exit_Command35_Click End Sub

Private Sub Command36_Click()

On Error GoTo Err_Command36_Click DoCmd.GoToRecord , , acNext Exit_Command36_Click: Exit Sub

Err_Command36_Click:

MsgBox Err.Description

Resume Exit_Command36_Click

End Sub

Private Sub Command37_Click()

On Error GoTo Err_Command37_Click DoCmd.GoToRecord , , acLast Exit_Command37_Click: Exit Sub

Err_Command37_Click:

MsgBox Err.Description

Resume Exit_Command37_Click End Sub

Private Sub Command38_Click()

On Error GoTo Err_Command38_Click DoCmd.Close

Exit_Command38_Click: Exit Sub

Err_Command38_Click:

MsgBox Err.Description

Resume Exit_Command38_Click End Sub

47.3.5按照以下窗体功能,补充事件代码设计。

在窗体中有\用户名称\和\用户密码\两个文本框,名称分别为\和\,还有\确定\和\退出\两个命令按钮,名称分别为\和\。在\和\两个文本框中输入用户名称和用户密码后,单击\确定\按钮,程序将判断输入的值是否正确,如果输入的用户名称为\,用户密码为\,则显示提示框,提示框标题为\欢迎\,显示内容为\密码输入正确,欢迎进入系统!\,提示框中只有一个\确定\按钮,当单击\确定\按钮后,关闭该窗体;如果输入不正确,则提示框显示内容为\密码错误!\,同时清除\和\两个文本框中的内容,并将光标置于\文本框中。当单击窗体上的\退出\按钮后,关闭当前窗体。

注意:不允许修改窗体对象\中未涉及的控件、属性和任何VBA代码。只允许在\与\之间的空行内补充一条语句,不允许增删和修改其它位置已存在的语句。 setfocus是把焦点指向一个控件。

本题相关知识点:setfocus 是把焦点指向一个控件(焦点就是指你的鼠标或者键盘活动在某个区域) Private Sub cmdEnter_Click()

Dim name As String, pass As String name = Nz(Me!tUser) pass = Nz(Me!tPass) '**** Add1 ***

If pass = \如果(If) 用户密码(pass) =输入的是 '*** Add1 *** (\ )And 并且用

MsgBox \密码输入正确,欢迎 户名称(name) = 输入的是\, 那么(Then) 进入系统!\欢迎\显示消息框 DoCmd.Close Else

MsgBox \密码错误!\显示消息框 Me!tUser = \使文本框清空 Me!tPass = \

' *********************** Add2 *************************************

tUser.SetFocus 用户名称文本框(tUser)作为(.)焦点指向的控件(SetFocus)也就是

将光标置于\文本框中

' *********************** Add2 *************************************

End If End Sub

Private Sub cmdQuit_Click()

' *********************** Add3 ************************************* DoCmd.Close 关闭窗体、报表、表都用固定语句:DoCmd.Close

' *********************** Add3 ************************************* End Sub

48.3.5按照以下窗体功能,补充事件代码设计。

窗体运行后,在窗体右侧显示可以修改的用户名、密码等内容的列表,同时在窗体左侧显示列表中所指用户的信息。另外,在窗体中还有\修改\、\保存\和\退出\三个命令按钮,名称分别为\、\和\。当单击\修改\按钮后,在窗体左侧显示出该窗体右侧光标所指用户的口令信息,同时\保存\按钮变为可用;在\口令\和\确认口令\文本框中输入口令信息后,单击\保存\按钮,若在两个文本框中输入的信息相同,则保存修改后的信息,(第二个空的问)并先将\保存\命令按钮变为不可用,再将除用户名外的其他文本框控件和标签控件全部隐藏,(第三个空的问)最后将用户名以只读方式显示;(第四个空的问)若在两个文本框中输入的信息不同,则显示提示框,显示内容为\请重新输入口令!\,提示框中只有一个\确定\按钮。(第一个空的问)单击窗体上的\退出\按钮,关闭当前窗体。

注意:不允许修改窗体对象\和\中未涉及的控件、属性和任何VBA代码;不允许修改表对象\。只允许在\与\之间的空行内补充一条 本题相关知识点:用户名以只读方式显示就是用户名的可用性为假值 Private Sub CmdEdit_Click() tUser_1.Enabled = True Me!Lremark.Visible = True Me!tPass.Visible = True

Me!tRemark_1.Visible = True Me!tEnter.Visible = True

CmdSave.Enabled = True Me!tEnter = \End Sub

Private Sub cmdquit_Click() ' ***** Add4 ****

DoCmd.Close 关闭当前窗体 DoCmd.Close ' ***** Add4 **** End Sub

Private Sub CmdSave_Click() If Me!tPass = Me!tEnter Then

DoCmd.RunSQL (\用户名='\用户名='\Me!tUser_1 & \ DoCmd.RunSQL (\tUser \& \口令='\& Me!tPass & \& \用户名='\& Me!tUser_1 & \

DoCmd.RunSQL (\备注='\用户名='\Me!tUser_1 & \

Forms!fEdit.Refresh

DoCmd.GoToControl \

' *** Add1 ***

CmdSave.Enabled = False 保存命令按钮(CmdSave)的(.)可用性(Enabled )= ' **** Add1 *** 假值也就是不可用(False) Me!tUser_1 = Me!用户名 Me!tPass = Me!口令

Me!tRemark_1 = Me!备注 Me!tEnter = \

Me!tPass.Visible = False

Me!tRemark_1.Visible = False Me!tEnter.Visible = False Me!Lremark.Visible = False ' **** Add2 ***

tUser_1.Enabled = False 将用户名tUser_1以.只读方式显示也就是可用性

' *** Add2 *** Enabled = False假值(用户名tUser_1为不可用,只可读) Else

' *** Add3 ***'

MsgBox \请重新输入口令!\vbOKOnly 消息框MsgBox显示提示内容“请重新输入口令!” ,

'*** Add3 *** 仅保留按钮是(vbOKOnly)

End If End Sub

Private Sub Form_Load() Me!tUser_1 = Me!用户名 Me!tPass = Me!口令

Me!tRemark_1 = Me!备注 Me!tEnter = \End Sub

51.3.5按照以下窗体功能,补充事件代码设计。在窗体中有一个组合框控件和一个文本框控件,名称分别为\和\TxtDetail\;有两个标签控件,名称分别为\和\;还有三个命令按钮,名称分别为\、\和\。在\组合框中选择某一项目后,\标签控件将显示出所选项目名加上\内容:\。在\文本框中输入具体项目值后,单击\命令按钮,如果\和\两个控件中均有值,则在子窗体中显示找出的相应记录,如果两个控件中不全有值,显示消息框,消息框标题为\注意\,提示文字为\查询项目和查询内容不能为空!!!\,消息框中只有一个\确定\按钮;单击\命令按钮,在子窗体中显示tStud\表中的全部记录;单击\命令按钮,将\和\两个控件中的值清空。 Private Sub cItem_AfterUpdate()

'************************* Add1 *************************

Ldetail.Caption = cItem & \内容:\(Ldetai)标签的(.)显示标题(Caption)来自(=) '************************* Add1 *************************(Citem)组合框中输入的内容连接(内Me.Refresh 容) End Sub

Private Sub CmdClear_Click() [TxtDetail] = \ [cItem] = \End Sub

Private Sub CmdList_Click()

'************************* Add2 *************************

fDetail.Form.RecordSource = \名为(fDetail)的(.)窗体(Form)的(.)记录'************************* Add2 *************************源(RecordSource)来自(=)(tStud) End Sub 这个表 Private Sub CmdRefer_Click()

If Trim(Me![TxtDetail]) <> \

fDetail.Form.RecordSource = \& Me![TxtDetail] & \ Else

'************************* Add3 *************************

MsgBox \查询项目和查询内容不能为空!!!\vbOKOnly, \注意\(MsgBox)消息框中要显示 '************************* Add3 *************************(\查询项目和查询内容不能为空!!!

End If \)提示内容(,) 并且只保留确定按钮(vbOKOnly) End Sub (,)消息框标题栏提示( \注意\)信息

52.3(3)窗体加载事件实现的功能是显示窗体标题,显示内容为\年度报表输出\,其中四位****为系统当前年份,请补充加载事件代码,要求使用相关函数获取当前年份。

(4)窗体中\报表输出\和\退出\按钮的功能是单击\报表输出\按钮(名为\)后,首先将\退出\按钮标题变为红色(255),然后以预览方式打开报表\;单击\退出\按钮(名为\)调用宏\。 按照以上功能描述补充相关事件代码,要求考虑错误处理。 Private Sub Form_Load() '设置窗体标题

'***** Add1 *****

Caption = Year(Date) & \年度报表输出\窗体标题显示(Caption)来自(=)系统当前 '***** Add1 ***** 年份(year(date()))与(&)(“年度报表输出”)文本串连接 End Sub

Private Sub bt1_Click() On Error GoTo ErrHanle

'设置窗体\退出\命令按钮标题为红色显示 '***** Add2 *****

bt2.ForeColor =255 命令按钮(bt2)的(.)前景颜色(ForeColor)应该是( =)红色(255) '***** Add2 ***** '预览方式输出报表rEmp '***** Add3 *****

DoCmd.OpenReport \ DoCmd . 打开报表(OpenReport) 报表 '***** Add3 ***** 的名称必须加双引号(“rEmp”),并以预览形 '正常结束 式输出( acViewPreview) Exit Sub '错误处理

'***** Add4 *****

ErrHanle: 错误标号(ErrHanle:)的截止位置在这里 '***** Add4 *****

MsgBox Err.Description, vbCritical + vbOKOnly, \End Sub

53套 (3)在窗体加载事件中实现代码重置窗体标题为\年度报表输出\显示,其中**为两位的当前年

显示,要求用相关函数获取。

(4)单击\报表输出\按钮(名为\),调用事件代码先设置\退出\按钮标题为粗体显示,然后以预览方式打开报表\;单击\退出\按钮(名为\),调用设计好的宏\来关闭窗体。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;已给事件过程,只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 Option Compare Database Private Sub bt2_Click() End Sub

Private Sub Form_Load() '设置窗体标题

'***** Add1 *****

Caption = Format(Date, \年度报表输出\ '***** Add1 ***** End Sub

Private Sub bt1_Click() On Error GoTo ErrHanle

'设置窗体\退出\命令按钮标题为粗体显示 '***** Add2 ***** bt2.FontBold = True '***** Add2 ***** '预览方式输出报表rEmp '***** Add3 *****

DoCmd.OpenReport \ '***** Add3 ***** '正常结束 Exit Sub

'错误处理

'***** Add4 ***** ErrHanle:

'***** Add4 *****

MsgBox Err.Description, vbCritical + vbOKOnly, \ End Sub

54套(3)在窗体加载事件中实现代码重置窗体标题为标签\的标题内容。 (4)\窗体上单击\输出\命令按钮(名为\),实现以下功能: 计算10000以内的素数个数及最大素数两个值,将其显示在窗体上名为\的文本框内并输出到外部文件保存。

单击\打开表\命令按钮(名为\),代码调用宏对象\以打开数据表\。 试根据上述功能要求,对已给的命令按钮事件过程进行代码补充并调试运行。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 Option Compare Database Private Sub btnP_Click() Dim n As Integer Dim mn As Integer

'计算10000以内的素数数量,将其存放在变量n内;10000以内的最大素数,将其存放在变量mn内 '提示:可以调用下面提供的素数判断函数 '***** Add2 ***** For i = 1 To 10000 If sushu(i) Then n = n + 1

If i > mn Then mn = i End If End If Next i

'***** Add2 *****

'将素数数量及最大素数的值显示在文本框\内 Me!tData = \数量:\最大值:\ '以下是文件操作

If Dir(CurrentProject.Path & \ Kill CurrentProject.Path & \ End If

Open CurrentProject.Path & \

Print #1, n & \ Close #1 End Sub

Private Sub btnQ_Click() '代码调用宏对象\ '***** Add3 *****

DoCmd.RunMacro \ '***** Add3 ***** End Sub

Private Sub Form_Load()

'设置窗体标题为标签\的标题内容 '***** Add1 *****

Caption = bTitle.Caption '***** Add1 ***** End Sub

'判断n是否为素数的函数

Private Function sushu(ByVal n As Long) As Boolean Dim i As Long

sushu = False

For i = 2 To n - 1

If (n Mod i) = 0 Then Exit For Next i

If i = n Then sushu = True End Function

55套(3)在窗体加载事件中实现代码重置窗体标题为标签\的标题内容。 (4)\窗体上单击\输出\命令按钮(名为\),实现以下功能: 计算满足表达式1+2+3+?+n<=30000的最大n值,将n的值显示在窗体上名为\的文本框内并输出到外部文件保存。

单击\打开表\命令按钮(名为\),代码调用宏对象\以打开数据表\。 试根据上述功能要求,对已给的命令按钮事件过程进行代码补充并调试运行。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;只允许在\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。 Option Compare Database Private Sub btnP_Click() Dim n As Integer

'计算1+2+3+?+n<=30000的最大n值 '***** Add2 ***** sum = 0 n = 0

Do While sum <= 30000 n = n + 1

sum = sum + n Loop

n = n - 1

'***** Add2 *****

'将n的值显示在文本框\内 Me!tData = n

'以下是文件操作

If Dir(CurrentProject.Path & \ Kill CurrentProject.Path & \ End If

Open CurrentProject.Path & \ Print #1, Me!tData Close #1

End Sub

Private Sub btnQ_Click() '代码调用宏对象\ '***** Add3 *****

DoCmd.RunMacro \ '***** Add3 ***** End Sub

Private Sub Form_Load()

'设置窗体标题为标签\的标题内容 '***** Add1 *****

Caption = bTitle. Caption '***** Add1 ***** End Sub

56套(3)在窗体加载事件中,实现重置窗体标题为标签\的标题内容。

(4)在\窗体上单击\男性最大年龄\命令按钮(名为\),实现以下功能。

查找表对象\中男性员工的最大年龄,将其输出显示在控件tData内;统计年龄在30以下(不含30)男性员工的人数,将其值写入外部文件\中。

单击\打开员工报表\命令按钮(名为\),通过代码调用宏对象\以打开报表\。 试根据上述功能要求,对已给的命令按钮事件过程进行补充和完善。

注意:不允许修改数据库中的表对象\和宏对象\;不允许修改窗体对象\和报表对象\中未涉及的控件和属性;只允许在

\与\之间的空行内补充语句、完成设计,不允许增删和修改其它位置已存在的语句。

Option Compare Database Private Sub btnP_Click() Dim k As Integer

Dim MAgeMax As Integer

Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim strSQL As String

Set cn = CurrentProject.Connection

strSQL = \性别,年龄 from tEmp where 性别='男'\

rs.Open strSQL, cn, adOpenDynamic, adLockOptimistic

MAgeMax = 0: k = 0

'查找tEmp表中男性员工的年龄最大值并统计年龄在30以下的男员工人数 Do While Not rs.EOF

If rs.Fields(\年龄\ '*****Add2*****

MAgeMax = rs.Fields(\年龄\ '*****Add2***** End If

'统计30岁以下男员工人数

If rs.Fields(\年龄\ k = k + 1 End If

'记录集遍历

'*****Add3***** rs.MoveNext

'*****Add3***** Loop

rs.Close

Set rs = Nothing

'将男性员工最大年龄值显示在文本框\内 Me!tData = \最大年龄:\ '以下是文件操作保存n值

If Dir(CurrentProject.Path & \ Kill CurrentProject.Path & \ End If

Open CurrentProject.Path & \ Print #1, k Close #1 End Sub

Private Sub btnQ_Click() '代码调用宏对象\ '*****Add4*****

DoCmd.RunMacro \ '*****Add4***** End Sub

Private Sub Form_Load()

'设置窗体标题为标签\的标题内容 '*****Add1*****

Caption = bTitle.Caption '*****Add1***** End Sub

57套(3)在窗体加载事件中,实现重置窗体标题为标签\的标题内容。 (4)试根据以下窗体功能要求,对已给的事件过程进行代码补充,并运行调试。

在窗体中有一个组合框控件和一个文本框控件,名称分别为\和\;有两个标签控件,名称分别为\和\;还有三个命令按钮,名称分别为\、\和\。

在\组合框中选择某一项目后,\标签控件将显示出所选项目名加上\内容:\。在

\文本框中输入具体项目值后,单击\命令按钮,如果\和\两个控件中均有值,则在子窗体中显示找出的相应记录,如果两个控件中没有值,显示提示框,提示框标题为\注意\,提示文字为\查询项目或查询内容不能为空!!!\,提示框中只有一个\确定\按钮;单击\命令按钮,在子窗体中显示\表中的全部记录;单击\命令按钮,将清空控件\和\中的值。

注意:不允许修改窗体对象\和子窗体对象\中未涉及的控件、属性和任何VBA代码;不允许修改报表对象\中已有的控件和属性;不允许修改表对象\和查询对象\。只允许在\与\之间的空行内补充一条代码语句、完成设计,不允许增删和修改其它位置已存在的语句。

Option Compare Database

Private Sub cItem_AfterUpdate()

'将标签显示内容设置为所选项目名加上\内容:\

'************************* Add1 ************************* Ldetail.Caption = CItem & \内容:\

'************************* Add1 ************************* Me.Refresh End Sub Private Sub CmdClear_Click() [TxtDetail] = \ [CItem] = \End Sub

Private Sub CmdList_Click() '显示全部记录

'************************* Add2 ************************* fDetail.Form.RecordSource = \

'************************* Add2 ************************* End Sub

Private Sub CmdRefer_Click()

If Trim(Me![TxtDetail]) <> \

fDetail.Form.RecordSource = \& Me![TxtDetail] & \ Else

'设置提示框

'************************* Add3 *************************

MsgBox \查询项目或查询内容不能为空!!!\注意\'************************* Add3 ************************* End If End Sub

Private Sub Form_Load() '设置窗体标题

'************************* Add4 ************************ Caption = tTitle.Caption

'************************* Add4 ************************ End Sub

Private Sub 主体_Click() End Sub

在\组合框中选择某一项目后,\标签控件将显示出所选项目名加上\内容:\。在

\文本框中输入具体项目值后,单击\命令按钮,如果\和\两个控件中均有值,则在子窗体中显示找出的相应记录,如果两个控件中没有值,显示提示框,提示框标题为\注意\,提示文字为\查询项目或查询内容不能为空!!!\,提示框中只有一个\确定\按钮;单击\命令按钮,在子窗体中显示\表中的全部记录;单击\命令按钮,将清空控件\和\中的值。

注意:不允许修改窗体对象\和子窗体对象\中未涉及的控件、属性和任何VBA代码;不允许修改报表对象\中已有的控件和属性;不允许修改表对象\和查询对象\。只允许在\与\之间的空行内补充一条代码语句、完成设计,不允许增删和修改其它位置已存在的语句。

Option Compare Database

Private Sub cItem_AfterUpdate()

'将标签显示内容设置为所选项目名加上\内容:\

'************************* Add1 ************************* Ldetail.Caption = CItem & \内容:\

'************************* Add1 ************************* Me.Refresh End Sub Private Sub CmdClear_Click() [TxtDetail] = \ [CItem] = \End Sub

Private Sub CmdList_Click() '显示全部记录

'************************* Add2 ************************* fDetail.Form.RecordSource = \

'************************* Add2 ************************* End Sub

Private Sub CmdRefer_Click()

If Trim(Me![TxtDetail]) <> \

fDetail.Form.RecordSource = \& Me![TxtDetail] & \ Else

'设置提示框

'************************* Add3 *************************

MsgBox \查询项目或查询内容不能为空!!!\注意\'************************* Add3 ************************* End If End Sub

Private Sub Form_Load() '设置窗体标题

'************************* Add4 ************************ Caption = tTitle.Caption

'************************* Add4 ************************ End Sub

Private Sub 主体_Click() End Sub

本文来源:https://www.bwwdw.com/article/trrg.html

Top