巧用ExcelVBA快速编排考场.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精品文档 精品文档 巧用 Excel VBA 快速编排考场座位 【摘要】科学的考场座位编排方法可以从根本上杜绝学生考试时的串通舞弊 现象,保证考试的公平、 公正及其严肃性。 本文结合自己的工作经验, 利用 Excel VBA 编程方法轻松实现了同级各班考生随机排座、且前后左右座位不是同班同 学,打印考场座位表、桌贴等功能。经实际应用,操作简单,方便实用。 【关键词】随机排座;考场编排;座位表;桌贴; VBA 数组 在编排考场时,既要基于学校实际,如需考虑各考场人数、组数、每组人数 等出现差异, 充好利用好每一个考场; 还要让同级各班考生被重新随机排序后基 本均匀地散布到各个考场,基本做到同一考场内同一班的考生前后左右均不相 邻,从根本上杜绝学生考试时的串通舞弊现象, 保证考试的公平、 公正及其严肃 性。随着学校办学规模逐渐扩大和学生人数的增加, 考场编排的工作量不断加大。 面对 Excel 工作表内动辄上千的数据行, 通过手工多次排序和复制粘贴数据完成 考场编排工作显然太麻烦了。 那么,能不能用相对比较简单的办法来解决问题呢 ? 答案显然是肯定的。 Excel 是微软公司的 Microsoft office 的组件之一,它可以进行各种数据的处 理、统计分析,在学校工作中有着广泛的应用。例如花名册、座位表、登分表等 的电子文档都是使用它来创建的。 Excel 不仅具有强大的制表功能,同时还内置 了系统开发工具 VBA。VBA 是指 Visual Basic for Application,它是在 Office 中 广泛应用的宏语言,可以直接对 Excel 对象进行编程,从而提高 Excel 的利用效 率。使用它可以增强 Excel 的自动化能力, 使用户更高效地完成特定任务。 因此, 笔者空闲时用 VBA 编了个程序,轻松快速地编排考场,生成考场座位表、桌贴 等,经实际应用,操作简单,方便实用。 一、考场编排 在中高考中各考场人数一般是 30 人,但基于笔者学校的实际,会出现各考 场人数各异、组数各异及每组人数各异的情况。因此,编排考场前,工作人员必 须将考生花名册(必须含班级)录入花名册工作表,考场基本信息(必须含考场 号、各组人数等)录入考场设置工作表中,如下图所示。 花名册工作表教高高高S高 花名册工作表 教 高 高 高 S 高 多 室 1 2 3 4 5 6 7 — S 9 10 f# 媒 123456^2910111213141516 T 考场 1组人数 2组人数 3组人数 4组人数 5组人数 &组人数 1 12 12 12 12 13 二 2 6 6 6 6 7 r 3 9 9 9 9 9 7 4 8 8 9 9 9 5 9 9 9 9 9 9 厂 & 7 7 7 7 7 7 9 9 9 9 10 r 8 7 7 7 7 9 二 9 10 10 9 10 10 8 r~ io 7 8 8 8 8 11 8 8 9 S S 12 5 5 5 5 5 13 9 9 9 9 9 10 14 4 4 5 5 15 5 5 5 5 A 室 室^12 教悌教教 电阶电电 考场设置工作表 编排考场时,为保证考生既要随机分布,又要均匀分布,在程序设计上多次 使用了随机编排。 (一)、班级内部考生的随机编排。程序在 G列(辅助列)对学生生成一次 随机数,再以班级和随机数为关键字段进行排序,实现班级内学生顺序的随机性。 代码: Ran domize (Timer)' Ran domize (Timer) '初始化随机数生成器 For x = 2 To Sht2R For x = 2 To Sht2R Cells(x, "G") = Rnd '花名册行循环 'G列写入随机数 Next x Worksheets(花名册 ”).UsedRa nge.Sort Key1:='班级", Order1:=xlAsce ndi ng, Key2:="随机数", Order2:=xlAsce ndi ng, Header:=xlYes, Orien tati on: =xlSortColu mns '排序 运行结果如下图: A B c Ld E F J G 1 姓名 班级 学号 数学一 英语 随机数 2 1 43 48 55 57 0.012369275 3 r 1 45 r 53 r 56 24 [0-038546324 4 1 20 64 60 74 0, 067036867 5 ? 1 8 61 66 44 0+075314045 6 ? 1 3 67 60 69 0. 096806824 7 1 11 r 48 r 34 74 P0-098285496 8 r i 33 64 r 68 58 0. 099981487 9 L i 62 L

文档评论(0)

cooldemon0602 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档