用VBA做选择题
利用excelvba制作多选题考试系统
利⽤excelvba制作多选题考试系统利⽤excel vba制作多选题考试系统⾯对⼤量的选择题考试,如果印刷纸质试卷,考完后由教师⼈⼯阅卷,不但效率低下,⽽且浪费⼈⼒、物⼒,还很容易出错。
即使学校有条件使⽤机读卡考试,也会提⾼成本,浪费财⼒。
我们利⽤excel vba制作了选择题考试系统,使⽤⽅便,节约⼈⼒、物⼒,深受⼴⼤教师的欢迎。
下⾯我以多选题为例介绍⼀下具体做法,供读者参考。
⼀、界⾯设计启动exce12003,把sheetl更名为“多选题”,sheet2更名为“多选题库”,在“多选题”中输⼊相应的内容,把窗⼝右上⾓的“垂直拆分块”拖动到第五⾏的下边缘,再点击“窗⼝⼀冻结窗格”。
两个按钮以后再添加,如图1所⽰。
把题⽬录⼊到“多选题库”中,其中第⼀⾏为字段名,在al -hl中分别输⼊:章、题号、答案、题⼲、a. b. c.d。
第⼆⾏以下为题⽬,如图2所⽰。
录⼊完毕后统计⼀下题⽬总数(我这⾥共录⼊了30 3道题,考试抽取20道题,考试时间共3 0分钟),在“多选题”的下列单元格中分别输⼊内容(ol:总题数、pl:303. 02:抽题数、p2:20. 01:考试时间(分钟)、q2:3 0)。
选择“⼯具⼀保护⼀允许⽤户编辑区域”,把b2. d2. h5放⼊其中。
⾄此,准各⼯作基本完毕。
⼆、代码编辑限于篇幅,以下只介绍代码编辑中的技术性问题,详细请参阅http:///doc/7ebdda291ed9ad51f01df2de.html /413660998?ptlang=2052。
按alt+fll键,进⼊vba编辑界⾯,按ctrl+r显⽰“⼯程资源管理器”窗⼝,按f4显⽰“属性”窗⼝。
1.启动代码简介双击“microsoft excel中对象”中的“thisworkbook”,在右侧窗⼝中输⼊代码。
这部分代码触发workbook_open()事件,主要有三项任务。
其⼀是利⽤“worksheets(”多选题库”).visible:xlsheethidden”隐藏题库;其⼆是清除上⼀名考⽣保存的信息;其三是利⽤msgbox语句给出“考试说明和答题注意事项”。
模块与VBA选择题详解综述
1. 模块与VBA编程基础选择题详解能被“对象所识别的动作”和“对象可执行的活动”分别称为对象的()(A)方法和事件(B)事件和方法(C)事件和属性(D)过程和方法答案(B)事件大部分是鼠标或键盘的动作,如单击、双击等等。
2. 在下列关于宏和模块的叙述中,正确的是()(A)模块是能够被程序调用的函数(B)通过定义宏可以选择或更新数据(C)宏或模块都不能是窗体或报表上的事件代码(D)宏可以是独立的数据库对象,可以提供独立的操作动作答案(D)A不对,函数是模块中代码的一种形式,B不对,宏不能直接选择更新数据C 不对3. 在Access数据库中,如果要处理具有复杂条件或循环结构的操作,则应该使用的对象()(A)窗体(B)模块(C)宏(D)报表答案(B)只有模块能实现复杂的功能。
4. 下列不属于类模块对象基本特征的是()(A)事件(B)属性(C)方法(D)函数答案(D)查看对应的定义5. 下列关于VBA事件的叙述中,正确的是()(A)触发相同的事件可以执行不同的事件过程(B)每个对象的事件都是不相同的(C)事件都是由用户操作触发的(D)事件可以由程序员定义答案(A)显然相同的事件中可以执行不同的代码,打开模块编辑代码的一种方式就是在事件中添加代码,这里的代码是由编程者自己编写的,可以修改。
6. 发生在控件接收焦点之前的事件是()(A)Enter (B)Exit (C)GotFocus (D)LostFocus答案(A)以文本框为例,当光标“I”在一个文本框中(假设名字为text1)闪烁时,说明焦点在此控件中,鼠标点击到另一个文本框(假设名字为text2)中时,首先触发text1的Exit事件,然后触发text2的Enter事件。
7. 在VBA中,如果没有显示声明或用符号来定义变量的数据类型,变量的默认数据类型为()(A)Boolean (B)Int (C)String (D)Variant答案(D)。
查看课本208页最上方。
PPT用VBA制作简单的选择题的方法及源码
PPT用VBA制作简单的选择题的方法及源码PPT用VBA制作简单的选择题的方法及源码 powerpoint中的vba可以实现很多复杂的交互,但很多老师面对vba编程,都会觉得无从下手。
所以本期我们为大家安排了一个关于powerpoint中vba的小专题,以后在课件中实现交互就不会那么费劲了。
vba基础说到vba编程,就不得不提到控件工具箱,我们需要利用其中的控件搭建需要的环境。
1( 显示控件工具箱在powerpoint中选择菜单“视图/工具栏/控件工具箱”。
2( 控件工具箱(如图1)中常用按钮的介绍(1)复选框(checkbox):可以选择多个选项,常用来设计多选题;(2)文本框(textbox):可以输入文本,常用来设计填空题;(3)命令按钮(commandbutton):用来确定选择或输入,也可设计超级链接;(4)单选框(optionbutton):只能选中一个选项,常用来设计单选题或判断题;(5)标签(label):用来显示文字信息。
( 插入控件的方法 3单击控件工具箱上的工具按钮,然后在幻灯片中拖动到适当大小即可。
4( 进入vba的方法双击幻灯片中的控件或用菜单命令“工具/宏/visual basic编辑器”即可进入vba编程状态。
5( 控件的主要属性及设置方法进入vba后,需要在“属性”窗口中对控件的属性进行设置。
如果没有出现“属性”窗口,按f4键即可调出该窗口。
下面我们就不同的控件,来说明常用属性的设置方法。
(1)复选框autosize:有两个值,true表示根据字的多少调整复选框的大小,false表示复选框为固定大小;backcolor:设置复选框的背景颜色,单击该属性框出现下拉按钮,选择“调色板”选项卡后选择颜色;caption:控件的名称,把默认值删除再重新输入新名称;font:设置字体、字号及字形,单击该属性框出现按钮,单击该按钮出现字体对话框,再在对话框中设置;forecolor:设置字的颜色,设置方法同backcolor;height:复选框的高度,直接输入数字即可;width:复选框的宽度,直接输入数字即可;value:复选框的值,true为选中,false则相反。
VBA题
第一套模拟题一、选择题(33)OpenForm的功能是用来打开A)表B)窗体C)报表D)查询(34)运行下面的程序段:For k=5 to 10 Step 2k=k*2Next k则循环次数为:A)1B)2C)3D)4(35)在"窗体视图"显示窗体时,要求在单击命令按钮后标签上显示的文字颜色变为红色,以下能实现该操作的语句是A)Label1.ForeColor=255B)bChange.ForeColor=255C)Label1.BackColor="255"D)bChange.BackColor="255"二、填空题(10)有一个VBA计算程序,该程序用户界面由4个文本框和3个按钮组成。
4个文本框的名称分别为Text1、Text2、Text3和Text4。
3个按钮分别为清除(名为Command1)、计算(名为Command2)和退出(名为Command3)。
窗体打开运行后,单击清除按钮,则清除所有文本框中显示的内容;单击计算按钮,则计算在Text1、Text2和Text33个文本框中输入的3科成绩的平均成绩,并将结果存放在Text4文本框中,单击退出按钮则退出。
请将下列程序填空补充完整。
PrivateSubCommand1_Click()Me!Text1=""Me!Text2=""Me!Text3=""Me!Text4=""EndSubPrivateSubCommand2_Click()If Me!Text1="" Or Me!Text2="" Or Me!Text3="" ThenMsgBox"成绩输入不全"ElseMe!Text4=(__【12】__+Val(Me!Text2)+Val(Me!Text3))/3【13】__EndSubPrivate Sub Command3_Click()Docmd.__【14】__EndSub(11)下面程序的输出结果是__【15】__。
计算机vba试题及答案
计算机vba试题及答案一、选择题(每题2分,共20分)1. 在VBA中,以下哪个关键字用于声明变量?A. DimB. SubC. FunctionD. End答案:A2. VBA中,用于结束一个循环结构的关键字是?A. NextB. LoopC. ExitD. Continue答案:A3. 在VBA中,以下哪个函数用于将字符串转换为大写?A. UCaseB. LCaseC. StrConvD. Trim答案:A4. VBA中,以下哪个对象代表当前工作表?A. ThisWorkbookB. ActiveSheetC. WorksheetsD. ActiveDocument答案:B5. 在VBA中,以下哪个属性用于获取或设置单元格的值?A. ValueB. NameC. FormulaD. Address答案:A6. VBA中,以下哪个函数用于计算数组中元素的数量?A. CountB. SumC. UBoundD. LBound答案:C7. 在VBA中,以下哪个事件用于在工作表被激活时触发?A. Worksheet_SelectionChangeB. Worksheet_ActivateC. Worksheet_BeforeDoubleClickD. Workbook_Open答案:B8. VBA中,以下哪个关键字用于定义一个过程?A. FunctionB. SubC. PropertyD. Const答案:B9. 在VBA中,以下哪个方法用于将一个工作簿保存为Excel 97-2003工作簿格式?A. SaveAsB. SaveC. ExportD. Close答案:A10. VBA中,以下哪个属性用于获取或设置单元格的宽度?A. WidthB. HeightC. ColumnWidthD. RowHeight答案:C二、填空题(每题2分,共20分)1. 在VBA中,使用________关键字可以定义一个变量。
VBA练习4(函数、表达式)含答案
VBA练习4(函数、表达式)含答案VBA练习四答案⼀、选择题1、下列逻辑表达式中,能正确表⽰条件“X和Y⾄少有⼀个是偶数”的是( A )。
A.X Mod 2=0 OR Y Mod 2=0B.X Mod 2=1 OR Y Mod 2=1C.X Mod 2=0 And Y Mod 2=0D.X Mod 2=1 And Y Mod 2=12、定义了⼆维数组A(3 to 5,6),则该数组的元素个数为( C )。
A.18B.27C.21D.303、有如下程序段:Dim str As String*10Dim iStr1="abcdefg"i=12len1=Len(i )str2=Right(str1,4)执⾏后,len1和str2的返回值分别是( C )。
A.12,abcdB.10,bcdeC.2,defgD.0,cdef4、以下可以得到“2+6=8”的结果的VBA表达式是( A )。
A.“2+6”&”=”& 2+6B.”2+6”+”=”+2+6C.2+6& “=”& 2+6D.2+6 +”=”+ 2+65、窗体上添加3个命令按钮,分别命名为command1、command2和command3,编写command1的单击事件过程,完成的功能为:当单击按钮command1时,按钮comand2可⽤,按钮command3不可见,以下正确的是( C )。
6、⽤于获得字符串str从第⼆个字符开始的3个字符的函数是( A )。
A .mid(str,2,3)B .middle(str,2,2)7、VBA代码调试过程中,能够显⽰出所有在当前过程中变量声明及变量值信息的是( C )。
A.本地窗⼝B.⽴即窗⼝C.监视窗⼝D.快速监视窗⼝8、在VBA中有返回值的处理过程是( C )A.声明过程B.Sub过程C.Function 过程D.控制过程9、InputBox函数返回值的类型为( B )。
国家二级ACCESS机试选择题(VBA编程)模拟试卷6(题后含答案及解析)
国家二级ACCESS机试选择题(VBA编程)模拟试卷6(题后含答案及解析)题型有:1. 选择题选择题1.打开一个窗体,要通过选择窗体的数据输入与窗体方式,限制窗体所显示的记录,应使用的宏操作命令是A.Open ReportB.Open TableC.Open FormD.Open Query正确答案:C解析:OpenReport为打开报表,OpenTable为打开表,OpenForm为打开窗体,OpenQuery为打开查询,所以选项C正确。
知识模块:VBA编程2.在窗体中有一个命令按钮Command1,两个文本框Text0和Text1,按钮Command1对应的代码过程如下:Private Sub Command1_Click( )Dim m,k As IntegerDim flag As Booleanm=Val(Me!Text0)’输入一个整数Do While1k=2flag=TrueDo、While k<=m/2And flagIfm Mod k=0Thenflag=FalseElsek=k+1End IfLoopIf flag ThenMe!Textl=m’输出计算结果Exit DoElsem=m+1End IfLoopEnd Sub运行程序,输入12,单击按钮,程序的输出结果是A.13B.12C.11D.其他整数正确答案:A解析:根据题目要求,输入一个整数赋值给m;外层D0wMe循环条件设置为“1”,表示循环条件永远为“真”,第一次执行循环语句时:k=2;flag=true;内层Do While k<=m/2And flag循环条件为true,进入内层循环的循环体语句,if m mod k=0条件为真,执行flag=false语句,内层循环体语句执行结束,然后判断第二次执行的循环条件Do While k<=m/2And flag循环条件为false,内层循环结束,进入外层循环语句if flag判断条件为fafse,执行语句m=m+1,m的值为13;继续进行外层循环,第二次执行循环语句时:k=2;flag=false;内层Do While k<=m/2And flag循环条件为false,内层循环不执行,进入外层循环语句if flag判断条件为true,执行语句Me!Text1=m,文本框Text1中显示的内容为13,然后执行exit do语句,结束整个循环,所以最终程序输出的结果为13,选项A正确。
国家二级ACCESS机试选择题(VBA编程)模拟试卷9(题后含答案及解析)
国家二级ACCESS机试选择题(VBA编程)模拟试卷9(题后含答案及解析)题型有:1. 选择题选择题1.VBA中一般采用Hungarian符号法命名变量,代表报表的字首码是A.ChkB.QryC.RptD.Cbo正确答案:C解析:Hungarian符号使用一组代表数据类型的码。
用小写字母作为变量名的前缀,“Chk”代表复选框,“Qry”代表查询,“Rpt”代表报表,“Cbo”代表组合框,所以选项C正确。
知识模块:VBA编程2.在标准模块“模块1”声明区中定义了变量x和变量y,如下所示,则变量x和变量y的作用范围分别是Dim x As IntegerPublic y As IntegerSub demoVar( )x=3y=5Debug.Print x&”“&yEnd SubA.模块级变量和过程级变量B.过程级变量和公共变量C.模块级变量和公共变量D.过程级变量和模块范围正确答案:C解析:VBA的变量声明会指明变量的作用域和声明周期,Dim为局部变量,Public为全局变量,Static代表静态变量。
在模块区定义的区域,通关Dim定义的变量时模块级变量,通过Public定义的变量是公共变量,所以应选择选项C。
知识模块:VBA编程3.下列Access内置函数中,用于去掉字符串前后空格的函数是A.LtrimB.RtrimC.SpaceD.Trim正确答案:D解析:LTrim(<字符串表达式>):删除字符串的开始空格:RTrim(<字符串表达式>):删除字符串的尾部空格;Trim(<字符串表达式>):删除字符串的开始和尾部空格;Space(<数值表达式>):返回数值表达式的值指定的空格字符数。
本题选项D正确。
知识模块:VBA编程4.下列程序的输出结果是Dim x As IntegerPrivate Sub Command4_Click( )Dim y As Integerx=1y=10Call fun(y,x)MsgBox”y=“&yEnd SubSub fun(ByRef y As Integer,ByVal z As Integer)y=y+zz=y-zEnd Sub A.y=1B.y=10C.y=11D.y=9正确答案:C解析:在函数参数传递中,包括按地址传递ByRef和按值传递ByVal两种方法。
VBA理论练习题
第一部分(模块与VBA编程基础)一、选择题(1~17):1.VBA中定义符号常量可以用关键字A)Const B)Dim C)Public D)Static2.Sub过程和Function过程最根本的区别是A)Sub过程的过程名不能返回值,而Function过程能通过过程名返回值B)Sub过程可以使用Call语句或直接使用过程名,而Function过程不能C)两种过程参数的传递方式不同D)Function过程可以有参数,Sub过程不能有参数3.定义了二维数组A(2 to 5,5),则该数组的元素个数为A)25 B)36 C)20 D)244.已知程序段:s=0For i=1 To 10 step 2s=s+1i=i*2Next i当循环结束后,变量i的值为a,变量s的值为b。
a. A)10 B)11 C)22 D)16b.A)3 B)4 C)5 D)65.以下内容中不属VBA提供的数据验证函数是A)IsText B)IsDate C)IsNumeric D)IsNull6.已定义好有参函数f(m),其中形参m是整型量。
下面调用该函数,传递实参为5将返回的函数值赋给变量t.以下正确的是A)t=f(m) B)t=Call(m) C)t=f(5) D)t=Callf(5)7.在有参函数设计时,要想实现某个参数的“双向”传递,就应当说明该形参为“传址”调用形式。
其设置选项是A)ByVal B)ByRef C)Optional D)ParamArray8.在VBA代码调试过程中,能够显示出所有在当前过程中变量声明及变量值信息的是A)快速监视窗口 B)监视窗口C)立即窗口 D)本地窗口9.VBA的逻辑值进行算术运算时,True值被当作A)0 B)-1 C)1 D)任意值10.VBA中不能进行错误处理的语句结构是A)On Error Then标号 B)On Error Goto 标号C)On Error Resume Next D)On Error Go 10011.VBA中用实际参数a和b调用有参过程Area(m,n)的正确形式是A)Aream,n B)Area a,b C)Call Area(m,n) D)Call Area a,b 12.给定日期DD,可以计算该日期当月最大天数的正确表达式是A)Day(DD)B)Day(DateSerial(Year(DD),Month(DD),Day(DD)))C)Day(DateSerial(Year(DD),Month(DD),0))D)Day(DateSerial(Year(DD),Month(DD)+1,0)13.下列关于宏和模块的叙述中,正确的是A)模块是能够被程序调用的函数B)通过定义宏可以选择或更新数据C)宏或模块都不能是窗体或报表上的事件代码D)宏可以是独立的数据库对象,可以提供独立的操作动作14.有如下VBA代码,运行结束后,变量n的值是n=0For i=1 TO 3Forj=-4 To -1n=n+1NextjNext iA)0 B)3 C)4 D)1215.假设有如下Sub过程:Sub sfun(x As Single,Y As Single)t=xx=t/yy=t mod y ‘mod求余计算例7 mod 4 =3 End Sub在窗体中添加一个命令按钮(名为Comnndl),编写如下事件过程Private Sub Commandl_Click()Dim a As SinSleDim b As SinSlea=5:b=4sfun(a,b) ‘原书有错,改为:sfun a,b或call sfun(a,b) MsgBox a & chr(10) + chr(13) & b ‘chr(数值)的功能返回数值对应的字母End Sub ‘chr(10)=’返回1个换行符?????‘chr(13)=’返回一个空格符号注意:a → x ; b → y 是按地址传递的,因此不能写成sfun 5,4chr与Asc互逆例asc(a)=97 ; chr(97)=a asc(chr(97))=97打开窗体运行后,单击命令按钮,消息框中有两行输出,内容分别为A)1和1 B)1.25和l C)1.25和4 D)5和416.有如下VBA程序段:sum=0n=0For i=1 TO 5x=n/in=n+1slim=sumNext i以上For循环计算sum,完成的表达式是A)1+1/1+2/3+3/4+4/5 B)1+1/2+1/3+1/4+1/5C)1/2+2/3+3/4+4/5 D)1/2+1/3+1/4+1/517.在窗体中有一个命令按钮runl6,对应的事件代码如下:Private Sub runl6_Enter()Dim num As IntegerDim a As IntegerDim b As Integer .Dim i As IntegerFor i=1 To 10num=InputBox("请输入数据:","输入",1)if Int(num/2)=num/2 Then ‘Int取整函数例int(3.5)=3a=a+1Elseb=b+1End lfNext IMsgBox("运行结果:a="& Str(a) & ",b=" & Str(b))End Sub ‘str(123)=”123”将123转换成字符串与val互逆。
VBA编程基础考试
VBA编程基础考试(答案见尾页)一、选择题1. VBA中,用于执行宏的操作是哪个命令?A. RunMacroB. ExecuteMacroC. RunCodeD. RunScript2. 在VBA中,若要引用一个窗体上的控件,应该使用哪种方式?A. 通过控件的名称B. 通过控件的索引号C. 通过控件的标题D. 通过控件的父级控件3. VBA中,能够用来声明变量的关键字是哪个?A. DimB. PrivateC. PublicD. Static4. 在VBA中,如何跳出当前循环?A. 使用break语句B. 使用continue语句C. 使用return语句D. 使用exit语句5. VBA中,数组的维数是由什么决定的?A. 定义时指定的长度B. 定义时指定的下标范围C. 定义时指定的上下界D. 定义时指定的大小6. VBA中,函数参数的传递方式是按值传递还是按引用传递?A. 按值传递B. 按引用传递C. 可以在函数定义时指定D. 以上都不对7. VBA中,用来表示字符串的长度的函数是什么?A. LenB. StrC. FixD. Round8. 在VBA中,如何实现文件的读写操作?A. 使用Write函数B. 使用Read函数C. 使用Open函数D. 使用Close函数9. VBA中,判断一个对象是否为数字的方法是什么?A. IsNumericB. IsIntegerC. IsDateD. IsObject10. 在VBA中,如何获取窗体的当前位置?A. 使用GetPosition方法B. 使用GetTop方法和GetLeft方法C. 使用GetWindow函数D. 使用GetParent方法11. VBA中,用于声明变量的关键字是?B. SetC. PrivateD. Public12. 在VBA中,能够引用窗体或报表对象的属性是?A. NameB. CaptionC. EnabledD. Style13. VBA中,用于打开窗体的方法是什么?A. ShowB. OpenC. CloseD. Refresh14. 在VBA中,如何使用Mid函数从字符串中提取子字符串?A. Mid(string, start[, length])B. Left(string, length)C. Right(string, length)D. Replace(string, find, replaceWith)15. VBA中,判断一个对象是否为空对象的方法是什么?A. IsNullB. IsEmptyC. IsObjectD. IsTrue16. 在VBA中,如何将一个数组的所有元素初始化为?A. ReDim arrayName(1 To 10) = 0B. Erase arrayNameC. Dim arrayName(1 To 10) = 0D. Store 0 in arrayName17. VBA中,用于计算字符串长度的方法是什么?B. ConcatenateC. RightD. Replace18. 在VBA中,如何声明一个局部变量?A. Dim 变量名 As 类型B. Private 变量名 As 类型C. Public 变量名 As 类型D. Static 变量名 As 类型19. VBA中,如何使用Choose函数根据条件返回不同的值?A. Choose(index, [value1], [value2], ..., [valueN])B. If(index = 1, value1, If(index = 2, value2, ...))C. Select caseD. While20. 在VBA中,如何将一个数组的元素按照一定的顺序排序?A. SortB. SortArrayC. OrderByD. GroupBy21. VBA中,用于声明变量的关键字是:A. DimB. PrivateC. PublicD. Static22. 在VBA中,以下哪个函数可以用来计算字符串的长度?A. LenB. StrC. LeftD. Right23. VBA中,用于打开一个文件并执行读操作的语句是:A. Open "文件名" For Input As #1B. Open "文件名" For Output As #1C. Create "文件名"D. Assign24. VBA中,用于插入新的记录的SQL语句是:A. INSERT INTOB. DELETE FROMC. UpdateD. Create25. 在VBA中,如果一个窗体的Caption属性被设置为"这是窗体",那么在代码中通过这个属性获取到的值是:A. "这是窗体"B. ThisFormC.窗体D. Forms(0)26. VBA中,用于将一个数组的所有元素初始化为的语句是:A. ReDimB. EraseC. ClearD. Fill27. 在VBA中,如果一个控件的名称改为"MyButton",那么在代码中通过这个控件获取到的对象引用是:A. ThisForm.MyButtonB. Me.MyButtonC. Forms(0).MyButtonD.控件集合28. VBA中,用于将字符串中的所有字符转换为大写字母的语句是:A. UCaseB. LCaseC. MidD. Left29. 如果一个VBA程序无法成功运行,为了进行调试,你应使用哪种方法来查看程序代码?A. 使用菜单命令“视图”中的“代码窗口”B. 使用调试器C. 查看源代码D. 阅读错误信息30. 在VBA中,以下哪个函数用于返回字符串的长度?A. LenB. StrC. LeftD. Right31. VBA是什么编程语言?A. C++B. JavaC. Visual Basic for ApplicationsD. Python32. 在VBA中,可以使用哪些数据类型?A. IntegerB. DoubleC. StringD. Boolean33. VBA中的变量声明方式是:A. varB. dimC. publicD. private34. 在VBA中,如何定义数组?A. Dim arr() As IntegerB. Dim arr(10) As IntegerC. ReDim arr(10)D. Dim arr() As Object35. VBA中循环结构包括哪种?A. For...NextB. While...WendC. Do...LoopD. For Each...Next36. VBA中条件判断语句有哪几种?A. If...ThenB. If...Then...ElseC. If...Then...ElseIfD. Select...Case37. VBA中函数有哪些基本功能?A. 计算B. 逻辑运算C. 字符串处理D. 数据转换38. 在VBA中,如何进行错误处理?A. On Error Resume NextB. On Error GoTo 0C. Catch...FinallyD. None of the above39. VBA中数据库访问常用对象有哪些?A. ConnectionB. CommandC. RecordsetD. Parameter40. 在VBA中,如何实现模块间的参数传递?A. 通过全局变量B. 通过形参和实参C. 通过事件D. 通过库函数二、问答题1. 什么是VBA?它在编程中的作用是什么?2. VBA有哪些基本数据类型?3. 请解释VBA的变量声明和赋值。
PPT用VBA制作简单的选择题的方法及源码2
PPT用VBA制作简单的选择题的方法及源码powerpoint中的vba可以实现很多复杂的交互,但很多老师面对vba编程,都会觉得无从下手。
所以本期我们为大家安排了一个关于powerpoint中vba的小专题,以后在课件中实现交互就不会那么费劲了。
vba基础说到vba编程,就不得不提到控件工具箱,我们需要利用其中的控件搭建需要的环境。
1.显示控件工具箱在powerpoint中选择菜单“视图/工具栏/控件工具箱”。
2.控件工具箱(如图1)中常用按钮的介绍(1)复选框(checkbox):可以选择多个选项,常用来设计多选题;(2)文本框(textbox):可以输入文本,常用来设计填空题;(3)命令按钮(commandbutton):用来确定选择或输入,也可设计超级链接;(4)单选框(optionbutton):只能选中一个选项,常用来设计单选题或判断题;(5)标签(label):用来显示文字信息。
3.插入控件的方法单击控件工具箱上的工具按钮,然后在幻灯片中拖动到适当大小即可。
4.进入vba的方法双击幻灯片中的控件或用菜单命令“工具/宏/visual basic编辑器”即可进入vba编程状态。
5.控件的主要属性及设置方法进入vba后,需要在“属性”窗口中对控件的属性进行设置。
如果没有出现“属性”窗口,按f4键即可调出该窗口。
下面我们就不同的控件,来说明常用属性的设置方法。
(1)复选框autosize:有两个值,true表示根据字的多少调整复选框的大小,false表示复选框为固定大小;backcolor:设置复选框的背景颜色,单击该属性框出现下拉按钮,选择“调色板”选项卡后选择颜色;caption:控件的名称,把默认值删除再重新输入新名称;font:设置字体、字号及字形,单击该属性框出现按钮,单击该按钮出现字体对话框,再在对话框中设置;forecolor:设置字的颜色,设置方法同backcolor;height:复选框的高度,直接输入数字即可;width:复选框的宽度,直接输入数字即可;value:复选框的值,true为选中,false 则相反。
用PPT(幻灯片)VBA制作的交互式单项选择题和多项选择题并计算得分电子教案
A 3+3=9
A 3+3=6
A 苹果
B 太 阳 从 东 方 升 起
B
太 阳 从 东 方 升 起
B 马 铃 薯
C 5-2=7
C 5-2=3
C 辣椒
D 太阳从西方升起
D 太 阳 从 西 方 升 起
D 冬 瓜
判断
重选
得分
40 温心提示:若没有效果,请启动
“宏”:工具/宏/安全性/安全级/勾 选“中”/确定,然后重新打开幻 片,点“启用宏”(文利制作)
多项选择题:
1、下列语句正确的有:
2、下列语句错误的有:
太 阳 从 东 方 升 起 3+4=12
一天36小时 本人姓黄
判断
重选
我 是 中 国 人 3×4=12
判断
一天36小时 香蕉是蔬菜
重选
显示帮助
您的名字
下一题
2分钟倒记时
单项选择题:
1、下列描述正确的是:( B ) 2、下列描述不正确的是:( C ) 3、下列哪个是水果:( C )
VBA练习1(答案)
VBA练习1(答案)VBA练习1一、选择题1、下列关于VBA面向对象中的“事件”,说法正确的是(B)。
A、每个对象的事件都是不相同的B、触发相同的事件,可以执行不同的事件过程C、事件可以由程序员定义D、事件都是由用户的操作触发的2、设a,b为整数变量,且均不为0,下列关系表达式中恒成立的是(C)。
A、a*b\\a*=1 B、a\\b*b\\a=1 C、a\\b*b+a Mod b=a D、a\\b*b=a3、设有如下变量声明:Dim TestDate As Date ,变量TestDate正确赋值的表达式是(A)。
A、TestDate=#1/1/2021# B、TestDate#″1/1/2021″#C、Test Date=date(″1/1/2002″)D、TestDate=Format(″m/d/yy″,″1/1/2002″) 4、下列可作为Visual Basic变量名的是(D)。
A、B#CB、4AC、?xyD、constA 5、以下内容不属于VBA提供的数据验证的函数是( A)。
A、Is Text B、Is Date C、Is Numeric D、Is Null 6、在VBA编辑器中打开立即窗口快捷键是(A)。
A、Ctrl +GB、Ctrl +RC、Ctrl +VD、Ctrl +C 7、VBA表达式Chr(Asc(Ucase(″abcdefg″)))的返回值是(A)。
A、A B、97 C、a D、65 8、在Access下,打开VBA的快捷键是(C)。
A、F5B、Alt+F4C、Alt+F11D、Alt+F12 9、VBA中定义局部变量可以用关键字(B)。
A、ConstB、DimC、PublicD、Static 10、VBA中不能进行错误处理的语句结构是(A)。
A、On Error Then标号B、On Error Goto标号C、On ErrorResume Next D、On Error Goto 0 11、下列关于VBA面向对象中的“方法”中说法正确的是(A)。
国家二级ACCESS机试选择题(VBA编程)模拟试卷7(题后含答案及解析)
国家二级ACCESS机试选择题(VBA编程)模拟试卷7(题后含答案及解析)题型有:1. 选择题选择题1.在表达式中引用窗体上的控件值。
下列选项中,语法格式正确的是A.Forms&[窗体名]&[控件名]B.Forms->[窗体名]->[控件名]C.Forms![窗体名]![控件名]D.Forms%[窗体名]%[控件名]正确答案:C解析:引用窗体上某控件值的语法格式为:Forms![窗体名]![控件名]或[Forms]![窗体名]![控件名],所以选项C正确。
知识模块:VBA编程2.打开窗体后,下列事件中首先发生的是A.加载(Load)B.改变(Change)C.调整大小(Resize)D.成为当前(Current)正确答案:A解析:打开窗体时,发生的事件依次为:打开(Open)→加载(Load)→调整大小(Resize)→激活(Activate)→成为当前(Current),所以选项A正确。
知识模块:VBA编程3.下列选项中,与VBA中语句DimVar%,sum!等价的是A.Dim Var As Double,sum As SingleB.Dim Var As Integer,sum As DoubleC.Dim Var As Single,sum As DoubleD.Dim Var As Integer,sum As Single正确答案:D解析:整数型数据类型标识为Integer,用“%”表示;单精度数据类型标识为Single,用“!”表示,所以选项D正确。
知识模块:VBA编程4.VBA中一般采用Hungarian符号法命名变量,下列代表复选框的字首码是A.ChkB.CboD.opt正确答案:A解析:Hungarian符号使用一组代表数据类型的码。
用小写字母作为变量名的前缀,“Chk”代表复选框,“Cbo”代表组合框,“cmd”代表命令按钮,“opt”代表选项按钮,所以选项A正确。
vba考试题及答案
vba考试题及答案**VBA考试题及答案**一、单选题1. VBA中,以下哪个函数用于计算两个日期之间的天数差?A. DateDiffB. DateAddC. DatePartD. DateValue答案:A2. 在VBA中,以下哪个关键字用于声明变量?A. DimB. SetC. CallD. Function答案:A3. VBA中,以下哪个属性用于获取或设置一个对象的名称?A. NameB. CaptionC. TextD. Value答案:A4. 在VBA中,以下哪个函数用于将文本转换为大写?A. UCaseB. LCaseC. StrCompD. StrConv答案:A5. VBA中,以下哪个事件用于响应用户点击按钮?A. ClickB. DblClickC. MouseDownD. MouseUp答案:A二、多选题6. 在VBA中,以下哪些数据类型是数值型?A. IntegerB. StringC. DoubleD. Currency答案:ACD7. VBA中,以下哪些控件可以用于输入数据?A. LabelB. TextBoxC. ComboBoxD. CommandButton答案:BC8. 在VBA中,以下哪些关键字用于循环控制?A. ForB. DoC. WhileD. If答案:ABC9. VBA中,以下哪些函数用于字符串操作?A. LeftB. RightC. MidD. Trim答案:ABCD10. 在VBA中,以下哪些事件可以用于表单控件?A. ClickB. ChangeC. DblClickD. KeyDown答案:ABCD三、判断题11. VBA中的变量必须在使用前声明。
(对/错)答案:对12. VBA中,所有的错误处理都可以通过On Error语句实现。
(对/错)答案:对13. VBA中,数组的索引默认从1开始。
(对/错)答案:错14. VBA中,使用With语句可以提高代码的执行效率。
vba上课习题
1.现有一个已经建好的窗体,窗体中有一命令按钮,单击此按钮,将打开“tEmployee”表,如果采用VBA代码完成,下面语句正确的是A. docmd.openform "tEmployee"B. docmd.openview "tEmployee"C. docmd.opentable "tEmployee"D. docmd.openreport "tEmployee"2.表达式Val(".123E2CD")的值是(val 函数作用就是数字类型和字符类型混合时,把字符类型去掉)A..123 B. 12.3C. 0 D. .123E2CD3.在窗体中添加了一个文本框和一个命令按钮(名称分别为tText和bCommand.,并编写了相应的事件过程。
运行此窗体后,在文本框中输入一个字符,则命令按钮上的标题变为“计算机等级考试”。
以下能实现上述操作的事件过程是A. Private Sub bCommand_Click( )Caption = ""计算机等级考试""End SubB. Private Sub tText_Click( )bCommand.Caption = ""计算机等级考试""End SubC. Private Sub bCommand_Change( )Caption = ""计算机等级考试""End SubD. Private Sub tText_Change( )bCommand.Caption = ""计算机等级考试""End Sub4.表达式1.5+3\2>2 Or 7 Mod 3<4 And Not 1的运算结果是A. -1 B. 0C. 1 D.其他5.VBA表达式3*3\3/3的输出结果是A. 0B. 1C. 3D. 96.在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码:Private Sub Command1_Click(.a = 75If a>60 Thenk = 1ElseIf a>70 Thenk = 2ElseIf a>80 Thenk = 3ElseIf a>90 Thenk = 4EndIfMsgBox kEnd Sub窗体打开运行后,单击命令按钮,则消息框的输出结果是A. 1B. 2C. 3D. 4A7.有如下程序段:Dim I As IntegerI=Int(-3.25)执行后,I的返回值是A.-3 B.-4C.3 D.3.258.设有如下窗体单击事件过程:Private Sub Form_Click()a = 1For i = 1 To 3Select Case iCase 1, 3a = a + 1Case 2, 4a = a + 2End SelectNext iMsgBox aEnd Sub打开窗体运行后,单击窗体,则消息框的输出的结果是A. 3B. 4C. 5D. 69.下列代码中()可以使控件TxtBox获得焦点。
VBA笔试试卷选择题大纲题
历年考试的概念选择题2004年9月笔试试卷选择题√(32)以下关于VBA运算符优先级比较,正确的是A)算术运算符 > 逻辑运算符 > 比较运算符B)逻辑运算符 > 比较运算符 > 算术运算符C)算术运算符 > 比较运算符 > 逻辑运算符D)以上均是错误的(33)定义了二维数组A(2 to 5,5),该数组的元素个数为A)20B)24 第一个量下标是2、3、4、5C)25 第二个量下标是0、1、2、3、4、5D)36(34)在VBA中,如果没有显式声明或用符号来定义变量的数据类型,变量的默认数据类型为A)BooleanB)IntC)StringD)Variant(35)使用VBA的逻辑值进行算术运算时,True值被处理为A)-1B)0C)1D)任意值2005年4月笔试试卷选择题√(30)以下可以得到"2*5=10"结果的VBA表达式为A)"2*5" & "=" & 2*5B)"2*5" + "=" + 2*5C)2*5 & "=" & 2*5D)2*5 + "=" + 2*5(31)确定一个控件在窗体或报表上的位置的属性是:A)Wight 或 Height B)Wight 和 HeightC)Top 或 Left D)Top 和 Left(32)假定窗体的名称为fmTest,则把窗体的标题设置为"Access Test"的语句是A)Me = "Access Test"B)Me.Caption = "Access Test"C)Me.text = "Access Test"D) = "Access Test"(33)以下程序段运行后,消息框的输出结果是a=sqr(3)b=sqr(2)c=a>bMsgbox c+2A)-1 B)1C)2 D)出错(34)执行语句:MsgBox "AAAA", vbOKCancel+vbQuestion,"BBBB"之后,弹出的信息框外观样式是:A) B)C) D)(35)用于获得字符串Str从第2个字符开始的3个字符的函数是A)Mid(Str,2,3)B)Middle(Str,2,3)C)Right(Str,2,3) D)2005年9月笔试试卷选择题√设有如下说明,请回答(22)~(24)小题:有如下窗体,窗体的名称为fmTest,窗体中有一个标签和一个命令按钮,名称分别为Labell和bChange。
模块与VBA选择题详解
1. 模块与VBA编程基础选择题详解能被“对象所识别的动作”和“对象可执行的活动”分别称为对象的()(A)方法和事件(B)事件和方法(C)事件和属性(D)过程和方法答案(B)事件大部分是鼠标或键盘的动作,如单击、双击等等。
2. 在下列关于宏和模块的叙述中,正确的是()(A)模块是能够被程序调用的函数(B)通过定义宏可以选择或更新数据(C)宏或模块都不能是窗体或报表上的事件代码(D)宏可以是独立的数据库对象,可以提供独立的操作动作答案(D)A不对,函数是模块中代码的一种形式,B不对,宏不能直接选择更新数据 C不对3. 在Access数据库中,如果要处理具有复杂条件或循环结构的操作,则应该使用的对象()(A)窗体(B)模块(C)宏(D)报表答案(B)只有模块能实现复杂的功能。
4. 下列不属于类模块对象基本特征的是()(A)事件(B)属性(C)方法(D)函数答案(D)查看对应的定义5. 下列关于VBA事件的叙述中,正确的是()(A)触发相同的事件可以执行不同的事件过程(B)每个对象的事件都是不相同的(C)事件都是由用户操作触发的(D)事件可以由程序员定义答案(A)显然相同的事件中可以执行不同的代码,打开模块编辑代码的一种方式就是在事件中添加代码,这里的代码是由编程者自己编写的,可以修改。
6. 发生在控件接收焦点之前的事件是()(A)Enter (B)Exit (C)GotFocus (D)LostFocus答案(A)以文本框为例,当光标“I”在一个文本框中(假设名字为text1)闪烁时,说明焦点在此控件中,鼠标点击到另一个文本框(假设名字为text2)中时,首先触发text1的Exit事件,然后触发text2的Enter事件。
7. 在VBA中,如果没有显示声明或用符号来定义变量的数据类型,变量的默认数据类型为()(A)Boolean (B)Int (C)String (D)Variant答案(D)。
查看课本208页最上方。
国家二级ACCESS机试选择题(VBA编程)模拟试卷10(题后含答案及解析)
国家二级ACCESS机试选择题(VBA编程)模拟试卷10(题后含答案及解析)题型有:1. 选择题选择题1.在VBA中,要引用“学生名单”窗体中的控件对象,正确的格式是A.Forms!学生名单!控件名称[.属性名称]B.Forms.学生名单.控件名称[.属性名称]C.Forms!学生名单!控件名称[!属性名称]D.Forms!学生名单.控件名称[.属性名称]正确答案:A解析:VBA中引用Access窗体中的控件对象的格式为:Forms!窗体名称!控件名[.属性名],所以选项A正确。
知识模块:VBA编程2.在窗体中有一个名称为Command1的按钮,该模块内还有一个函数过程:Public Function f(x As Integer)As IntegerDim y As Integerx=20:y=2:f=x*yEnd FunctionPrivate Sub Command1_Click( )Dim y As IntegerStatic x As Integerx=10y=5y=f(x)Debug.Print x;yEnd Sub打开窗体运行后,如果单击按钮,则在立即窗口上显示的内容是A.105B.1040C.205D.2040正确答案:D解析:本题主要考查局部变量的使用和函数调用过程中的参数传递。
参数传递的方式有传值和传址两种形式,其中默认的方式是传址。
本题中Click事件和函数f都有变量y,但都是各自的局部变量,只是同名而已。
同样Click事件和函数f中的x也是局部变量(形式参数也属于局部变量),但此处的参数传递是传址,因此函数f对变量×的修改会带回到Click事件。
在Click事件中,调用函数f的同时将参数×以传址的方式传给了函数f。
在函数f中×被重新赋值为20,并与函数f的局部变量y相乘得结果40,并通过函数f传回了Click事件。
在Click 事件中该结果被赋值给该事件的局部变量y,所以调用的结果是Click事件中的局部变量x和y分别变成了20和40。
第三个Office VBA 案例 Word制作单项选择题
第三个Office VBA 案例Word制作单项选择题0)新建Word文件,保存成启用宏的Word文档,文件名任意1)选择“开发工具”选项卡若无此选项卡,在任意选项卡中点击右键选择自定义功能区打开2、先做如下排版3、点击插入,插入“选项按钮(ActiveX控件)”插入四个按钮如下图所示4、右键点击第一个按钮,选择属性5、在属性框中把“名称”更改为“A1”;“Caption”更改为“A:10个”6、重复第五步操作分别更改另外三个按钮的“名称”和“属性”名称CaptionA1A:10个B1 B:8个A2 A:10个B2 B:8个更改后如下图所示7、对按钮进行分组(这步重要,分组才能选择两个以上选项)右键A1打开属性在属性框中更改GroupName的值为1用同样的方式更改B1的GroupName值为1;A2、B2更改为2。
如果有第3题以上,更改相应GroupName为相应值即可8、点击打开VBA窗体双击窗体中的相对应的,在通用中点击下拉菜单选择Document右侧选择Open事件在open事件中输入以下代码代码:A1.Value = FalseB1.Value = FalseA2.Value = FalseB2.Value = False表示打开文档的时候初始化选项按钮的值为空。
9、插入ActiveX控件当中的命令按钮(ActiveX控件)10、在命令按钮上点击右键选择“属性”11、在属性框中更改Caption为交卷12、在交卷按钮右边输入“你的得分是:”插入一个文本框(ActiveX控件)名称保留默认的“TextBox1”,如果不是此名称,更改为这个名称备注:更改名称的方式为右键文本框选择属性13、双击按钮打开按钮的click事件输入以下代码:代码及解释Dim i As Integer-----------定义i为整形i = 0------------------赋值i初始值为0If A1.Value = True Then----如果A1的值为真(A1为选中状态)i = i + 50-------------i值+50(选项正确加上分值,本案例只有两题,每题50份,实际应用的时候按每题分值替代50)Else-----------------------如果不是A1的值为真i = i + 0--------------i的值不变End IfIf A2.Value = True Theni = i + 50Elsei = i + 0End IfMe.TextBox1.Text = i & “分”--Textbox1的文字等于i+分13、退出设计模式即可测试效果文档社备注:在控件属性等不可选的时候可能是退出了设计模式,记得切换;代码部分皆为半角字符(英文字符),输入的时候需注意。