用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两种方法。