35. 在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码: Private Sub Command1_Click() MsgBox f(24,18) End Sub Public Function f(m As Integer,n As Integer)As Integer Do While m<>n Do While m>n M=m-n Loop Do While m<n N=n-m Loop Loop F=m End Function 窗体打开运行后,单击命令按钮,则消息框的输出结果是
10. 子过程Test显示如下所示的4×4乘法表。 1 * 1=1 2 * 2=2 1 * 3=3 1 * 4=4 2 * 2=4 2 * 3=6 2 * 4=8 3 * 3=9 3 * 4=12 4 * 4=16 请在空白处填入适当的语句使子过程完成指定的功能。 Sub Text() Dim i,j As Integer For i=1 To 4 For j=1 T0 4 IfT11en Debug.Print i &”" * "& j &"="i * j & Space(2) End If Next If Debug.Print Next i End Sub
i<=j
[解析] 本题考查的是VBA编程基础、循环结构。该程序中变量i和j是作为乘数定义的,同时也起到控制循环的作用,本程序中定义了两个For循环,“For i=1 To 4”为外循环,表示变量i的值从1到4,步长为1(当步长为1时,关键字Step可省略),“For j=1 To 4”为内循环,表示变量j的值从1到4,步长为1,根据要求,输出结果是一个4×4的乘法表,所以If后的条件填“i<=j”。
11. 有“数字时钟”窗体如图所示。 在窗口中有按钮“[开/关]时钟”,单击该按钮可以显示或隐藏时钟。其中按钮的名称为“开关”,显示时间的文本框名称为“时钟”,计时器间隔已设置为500。 请在空白处填入适当的语句,使程序可以完成指定的功能。 Dim flag As Integer Private Sub Form_Load() Flag=1 End Sub Private Sub Form_Timer() '“计时器触发”事件过程 时钟=Time '在“时钟”文本框中显示当前时间 End Sub Private Sub开关_Click() '“开关”按钮的单击事件过程 If______Then 时钟.Visible=False Flag=0 Else 时钟.Visible=True Flag=1 End If End Sub
12. 窗体中有两个命令按钮:“显示”(控件名为cmdDisplay)和“测试”(控件名为cmdTest)。当单击“测试”按钮时,执行的事件功能是:首先弹出消息框,若单击其中的“确定”按钮,则隐藏窗体上的“显示”按钮;否则直接返回到窗体中。请在空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub cmdTest_Click() Answer=("隐藏按钮?",vbOKCanee1+vbQuestion,"Msg") If Answer=vbOK Then Me!cmdDisplay.Visible= End If End Sub
13. 对窗体Test上文本框控件txtAge中输人的学生年龄数据进行验证。要求:该文本框中只接受大于等于15且小于等于30的数值数据,若输入超出范围则给出提示信息。该文本控件的BeforeUpdate事件过程代码如下,请在空白处填入适当的语句,使程序可以完成指定的功能。 Private Sub txtAge_BeforeUpdate(Cancel As Integer) If Me!txtAge=" "Or(Me!txtAge)Then '数据为空时的验证 MegBox"年龄不能为空!",vbCritical,"警告" Cancel=Ture '取消BeforeUpdate事件 Else If IsNumeric(Me!txtAge)=False Then '非数值数据输入的验证 MsgBox"年龄必须输入数值数据!",vbCritical,"警告" Cancel=True '取消BeforeUpdate事件 Else If Me!txtAge<15 Or Me! txtAgeThen '非法范围数据输入的验证 MsgBox"年龄为15-30范围数据!",vbCritical,"警告" Cancel=True Else MsgBox"数据验证OK!",vblnformation,"通告" End If End Sub
(14) ISNULL (15)>30
[解析] 本题考查的是VBA编程基础。在本题中,通过程序给出的中文提示内容和注释,判断出每段程序的判断过程。首先,通过语句“MsgBox”年龄不能为空!”,vbcritical,”警告””可知,第一个If语句是判断文本框中的内容是否为空值,若是空值则给出提示信息“年龄不能为空!”,这里的If语句使用两种方法来判断,第一种是Me!txtAge=" ",第二种则需要使用ISNULL()函数来判断文本框内容是否为空,所以(14)空填ISNuLL。 语句“Else If IsNumeric(Me!txtAge)=False”是表示判断文本框中的数据是否为数值型,这里没有需要填写的内容。然后,通过注释“非法范围数据输入的验证”和语句“MsgBox”年龄为15-30范围数据!”,vbCritical,”警告””可知,第三个条件语句是判断该文本框中的数据是否是≥15且≤30的数值数据,由于是判断填入的数据是否为非法范围输入,就是判断数据是否<15或>30,所以用语句“Else If Me!txtAge<15 or Me!txtAge>30 Then”来实现,所以(15)空填“>30”。