利用EXCEL开发电大考务信息管理软件
2012-04-29詹斌邱伟艺
詹斌 邱伟艺
摘要:中央电大开发的“广播电视大学教务管理信息系统”推出以来,为基层电大提供了统一的、科学的教务管理支持应用平台;然而由于软件开发落后于实际需求的特点,基层电大教学管理人员进行考场编排管理仍需利用EXCEL等辅助软件,传统的操作方法存在工作效率低等问题。该文总结了利用EXCEL开发电大考务信息管理软件,提高电大考务工作效率的一些做法。
关键词:EXCEL;VBA;数据处理;考务信息管理;考场编排
中图分类号:TP311文献标识码:A文章编号:1009-3044(2012)23-5620-04
教学质量是电大生存的生命线,考务管理工作则是电大教学质量保障体系的重要组成部分,关系到开放教育工作的可持续发展。近年来,惠东电大在订卷、考场编排方面,利用计算机数据库查询技术和电子表格、编程技术,使用上级电大所提供的考试安排信息、及本校所拥有的开课信息、重修重考数据,采用流程化操作的方法,利用EXCEL办公软件开发考场编排辅助软件,准确、方便、快捷地完成订卷和考场编排工作,通过该软件辅助考务信息管理,实现了考务信息的准确性、严肃性、规范性,为师生提供优质服务。现在将此软件的设计背景及设计思想、主要特点在下文中加以讨论。
1基层电大考务信息管理工作中的存在问题
目前,各级电大统一使用中央电大开发的“广播电视大学教务管理信息系统JWGLNET”(以下简称“教务管理系统”) ,“教务管理系统”具有很强的考试工作管理功能,可以实现考试定义、考点管理、报考管理、考场编排等多项功能,我们在电大考务管理过程中,发现教务系统所产生考场编号是随机的,而具体的考室号是固定的,“教务管理系统”中的逻辑考场号与学校管理中的物理教室编号是无法对应的[1]。
广播电视大学开设的专业多,各专业的课程也很多,概括起来就是考生人数多、考生类别多、考场多、考试科目多[1]。为了方便学员查询,考务管理机构仍须为每一场的考试指定好具体的考室号,并整理出考场安排总表,这样才能方便考生考试和监考人员组织考试,这里面包含了正考课程和重修重考课程,考务管理人员必须思路清晰,周密安排,精心组织,才能使信息传递顺畅,保证考试管理系统的高效、有序运行[2]。编制考场安排总表的工作往往要耗费考务管理人员的大量时间和精力。由于不少教务管理人员同时还兼任电大辅导教师,从教师的专业发展角度来看,由于教务工作量大,大大分散了从事教学工作的精力,不利于教师的专业发展。
2突破传统思维研发考务软件
针对以上考务管理存在的问题,经过分析研究,发现应用EXCEL软件中的数据库查询功能和VBA程序设计功能,可整合出一套考务数据处理及考场安排总表制作的计算机辅助管理方法,形成实用的考务软件。
2.1利用EXCEL进行考务数据处理
数据库查询,又称DBQ (data basequery),在EXCEL电子表格软件中也有数据库查询功能,使用Microsoft Query查询向导,可以连接到外部数据源,从那些外部数据源选择数据,将该数据导入到工作表中,如图1。[3]
利用EXCEL查询向导中,将中央电大的考试计划表和本校的开课计划表,通过卷号信息进行连接,即可获得我们需要的数据,即包含有考试日期、考试时间的本校考场安排/订卷数据。步骤如下:
1)在EXCEL中将开课计划表及考试计划表另存为dbase 4(dbf)格式的数据表。
2)利用EXCEL查询向导生成正考科目的考场安排、订卷信息表。
首先,调用“数据”菜单的“新建数据库查询”命令。
图2导入外部数据-新建数据库查询
在弹出的对话框中选择数据源:
图3选择数据源
在选择列对话框中,选择建立查询所需的数据,如考试计划表中的所有列及开课计划表的班代码、班名称、人数、卷号(用来与考试计划表关联)。
图4选择列
然后,出现下图对话框,点击“确定”。
图5对话框
出现下图,即查询设计窗口。
图6查询设计器
这时,数据显示共有80958条,而实际本校并无这么多的数据,还需要将两表用关键词关联起来,如下图,现在,显示查询的结果只有110条记录。
接着,按照考试日期、时间、卷号、班代码排序,最后,将查询的结果以数据方式返回到EXCEL中。
2.2利用EXCEL生成考场安排总表
要快速地生成考试安排总表,首先我们要了解一下什么是VBA编程技术。VBA是Ofice系列软件的内置编程语言,VBA的语法同VB类似,但比VB增加了很多特有的函数和对象,这些函数、对象是专门提供给用户使用的。当以Excel作为二次开发平台时,VBA编写的应用程序可以访问所有的Excel功能。[4]
下面以一个例子说明VBA编程技术在考务管理中的应用,特别是在提高EXCEL操作的速度上具有得天独厚的优势。例如,经过上述数据库查询,返回EXCEL中的数据,即详细的考场安排数据,如何将其改为考场安排总表呢?如图9所示,我们发现,报考数据中有些行人数超过30人,受目前课室大小的限制,需要按30人一批作为一间试室。我们需要用VBA编制一个小程序,将人数超过30人的班级,例如第一行,52人,自动在下方插入一行,然后按照30人、22人划分为两个试室。效果如图10。
编写的EXCEL VBA程序如下:
Public Sub tianchong()
Dim i As Integer
Dim m As Integer
Dim renshu As Integer
Dim n As Integer
Dim j As Integer
For i = 2 To 1000
If Cells(i, 1) = "" Then
Exit Sub
End If
For m = 1 To 10
If Cells(1, m) = "人数" Then
renshu = Cells(i, m).Value
Exit For
End If
Next m
n = -Int(-renshu / 30)
If n > 1 Then
Rows(i + 1).Select
For j = 1 To n - 1
Selection.Insert Shift:=xlDown
Next j
Range("A" & i & ":J" & i + n - 1).Select
Selection.FillDown
Selection.Font.Bold = True
For j = i To i + n - 1
If j < i + n - 1 Then
Cells(j, m) = 30
Else
If renshu Mod 30 <> 0 Then
Cells(j, m) = renshu Mod 30
Else Cells(j, m) = 30
End If
End If
Next j
End If
Next i En
d Sub
3系统特点及应用效果
既然这是一套考务辅助管理软件,其中自然少不了具体的操作流程。主要的操作流程可分为三步,第一步,将中央电大及省电大所下发的考试计划,起初是EXCEL文档,但不是规范的数据库,在EXCEL中将其整理成记录单的形式,然后根据所需进行的下一步处理,转存成DBF数据表格式。第二步,利用前述数据库查询技术,根据本校所有正考及补考的数据,利用卷号连接查询的方法,生成所有考试科目的数据(包含了考试日期和时间信息、卷号、课程名称、班级名称、人数等信息),用于订卷;第三步,在EXCEL中,利用VBA编程技术,高效地进行处理,提高工作效率,生成考场安排数据(比如,同一班级,按每室30人划分不同考室,并自动填写起止学号等)。
图10主要操作流程
该考务软件的特点及应用效果如下:
1)系统特点
该考务软件主要以电子表格操作及数据库查询操作为主,对操作员要求是掌握EXCEL及会使用数据库查询功能。需要应用的程序代码的应用嵌套在电子表格文档中,只在需要时调用,因此只要按照操作流程来操作,就可确保数据的准确性。在采用EXCEL整理订卷数据及安排考场总表的基层电大教务管理部门,经本人了解,多数还停留在初级的应用层次,采用此方法不但可行,而且对提高基层电大教务管理人员的计算机应用水平也有一定的帮助。
2)应用效果
利用该考务信息管理软件,有效地利用了上级电大所下发的资源,同时又利用了本校的重修重考报考系统所生成的数据,为教务部门及时上报订卷信息,快速安排考场提供了信息技术支持服务,提高了工作效率和工作准确度。并且最终可以将考场安排情况上传至网络服务器,可以分班分科目准确打印,使各班考生、各班主任及教师可以选择专业或课程准确打印。
参考文献:
[1]黎辉,王杰,陈亮.电大考务管理信息化的研究与应用[J].新疆广播电视大学学报,2006(4).
[2]张志方.以控制论的观点探讨市级电大考务管理[J].内江科技,2007(2).
[3]佚名.关于使用Microsoft Query检索外部数据[EB/OL].微软中国官网,http://office.microsoft.com/zh-cn/excel-help/HP005274751. aspx.
[4]吴敬兵,潘伟峰.基于VBA的EXCEL二次开发应用研究[J].湖北教育学院学报,2007,(2).
[5]李政,梁海英,李昊.VBA应用基础与实例教程[M].北京:国防工业出版社,2005.