- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
应用VBA轻松编排考试试场
【摘要】为了防止学生考试时作弊,有利于班级的管理和教学,本文结合自己的工作经验总结出了一种科学合理地安排考试试场的方法,每次考试编排试场时考生单人单桌,考生座位随机编排,而且前后座位不是同班的同学,同时打印出贴在试场桌子的考生标签。
【关键词】随机函数;四舍五入函数;VBA代码;主要关键字;排序
为了尽量防止考生考试时作弊,得到考生比较的真实的成绩,每次考试学校都要求编排试场时学生单人单桌,而且前后座位不能是同班的同学,同时打印出贴在试场桌子的考生标签。为此笔者在Excel中用VBA代码轻松实现了学校的要求。
一、试场安排表的设置
试场安排表设有“班别”、“人数”、“桌子数”、“试场”、“考生人数”共五列,由于我校是俩学生同坐一张课桌,可以利用四舍五入函数取得桌子数:ROUND(B2/2,0),根据桌子数安排考生人数。
二、贴班级教室表的设置
贴班级教室表即是学生考试时所在试场的去向表,按“试场”、“考号”、“班级”、“姓名”、“性别”、“随机数”设计字段,利用随机函数RAND()获得随机数,原始表可以不按班级连续存放考生记录,代码中含有按班级排序程序段。
三、编排试场的设计思路及代码
1、思路:分别以随机数和班级为关键字段进行排序,确保每次考生座位随机编排,为了防止前后座位是同班的同学,以人数最多的班级为准先给“贴班级教室”表中的考号赋临时值,按照先排奇数考号再排偶数考号,然后按“考号”字段排序,即可实现同一个班的考生的考号不连续。最后根据“试场安排表”的顺序给考生赋连续的考号和对应的试场教室。
2、代码:
(1)右击工作表标签,在出现的快捷菜单中单击“查看代码”,打开代码设计窗口。
(2)在代码窗口中执行命令“插入/模块”,插入模块1。
(3)录入代码如下:
Sub Macro1()
Application.ScreenUpdating = False
Dim i As Integer ’定义整型变量用于循环操作
Dim j As Integer ’定义整型变量给“贴班级教室”表中的考号赋临时值
Dim n As Integer ’定义整型变量给“贴班级教室”表中的考号赋值
Dim k As Integer ’定义整型变量定位写入的单元格
Dim mj As Integer ’定义整型变量输入人数最多的班级的人数
Dim row1 As Integer ’定义整型变量存放“试场安排”表的行数
Dim row2 As Integer ’定义整型变量存放“贴班级教室”表的行数
Dim y As Integer ’定义整型变量存放“试场安排”表中考生人数
Dim c As String ’定义字符串变量存放“试场安排”表中试场教室
Dim s As String ’定义字符串变量存放按考号进行排序时的右下角单元格标记
’以下代码分别以随机数和班级为关键字段进行排序
Sheets(贴班级教室).Select
row2 = Sheets(贴班级教室).[a1].CurrentRegion.Rows.Count
s = F + Trim(Str(row2))
Range(A1).Select
Range(A2: + s).Sort Key1:=Range(F2),Order1:=xlAscending,Header:= _
xlGuess,OrderCustom:=1,MatchCase:=False,Orientation:=xlTopToBottom,_
SortMethod:=xlPinYin,DataOption1:=xlSortNormal
s = E + Trim(Str(row2))
Range(A1).Select
Range(A2: + s).Sort Key1:=Range(C2),Order1:=xlAscending,Header:= _
xlGuess,OrderCustom:=1,MatchCase:=False,Orientation:=xlTopToBottom,_
SortMethod:=xlPinYin,DataOption1:=xlSortNormal
’以下代码用于在“贴班级教室”表中给各班级考生的考号赋临时值
mj = InputBox(请输入人数:,人数最多的班级)
For k = 2 To row2
’以下代码给考号赋奇数值
j = 1
Do While j = mj ’此次考试中人数最多的班级为mj人
您可能关注的文档
最近下载
- 2024年公开选拔领导干部面试题及参考答案全解.doc
- 【9化第一次月考】合肥市第四十五中学2024-2025学年九年级上学期第一次月考化学试题.docx VIP
- 第四章 神奇的透镜单元复习(教学设计)八年级物理上册(沪科版2024).docx VIP
- 2024年中考语文二轮复习:名家散文阅读(毕淑敏)练习题汇编(含答案解析).docx VIP
- 【9化第一次月考】芜湖市鸠江区2024-2025学年九年级上学期第一次月考化学试题.docx VIP
- 《诡案组》(1-14卷文字全本)作者:求无欲.txt VIP
- 数字出版概论课件陈丹第一章数字出版及其发展历程;第二章数字出版研究及其学科体系.pptx VIP
- 2023-2024学年初三化学上学期第一次月考.docx VIP
- 2024年中考语文二轮复习:名家散文阅读(汪曾祺)练习题汇编(含答案解析).docx VIP
- 2025凉山州继续教育公需科目满分答案-《网络数据安全管理条列》解读.docx VIP
文档评论(0)