谈高考志愿填报辅助系统的研发 包远科
谈高考志愿填报辅助系统的研发
◎ 四川省沐川中学校 包远科
摘 要:为帮助广大考生在高考后准确、高效填报志愿,特研发一款高考志愿填报辅助系统。在研发之前,笔者曾就通知书、体质健康表批量套打、收集高考报名信息、学业水平考试考生定位表模板、信息技术学业水平考试模拟系统等作过自动化设计,在自动化办公方面已积累了丰富的经验。在此,结合Microsoft Excel及其VBA强大的编程功能,辅以VB6.0程序设计便可实现该系统的研发。通过近三年不懈努力,在收集数据、数据处理方面作了大量工作,后期编程乃是实现其强大功能和目的的根本保障。通过大胆探索和试验,并通过宏录制、百度代码查询及调试修改等方法,最终完成了本系统的研发,实现了较为理想的功能和效果。
关键词:高考;志愿填报;数据;系统;知识产权
一年一度的高考备受关注,它可以是来自社会的,也可以是来自家庭的、亲友们的,更是来自自己的,因为它是每位考生实现抱负,通往理想殿堂的最直接的途径。话说:“考生能否考上理想的大学,七分在高考,三分在志愿。”由此可见,填好志愿是多么的重要。倘若草率,你极有可能与心仪的大学失之交臂。笔者在多年的高考志愿填报指导中发现大多考生及家长对填报志愿感到困惑。怎么选学校,怎么选专业成了他们的难题。为给考生答疑解惑,笔者花了近三年的时间进行探索和研究,先是给考生制定志愿填报草表,让考生完善相关信息,后发现他们所列院校及专业大多都会被推翻打破,又会重复前面的劳动在多本书上翻来覆去地去查找资料,废时废力,久久不能定夺。填报志愿看似两天、七天甚至十几天的时间,实则短暂。有的考生和家长通宵不眠为此烦恼,大多会熬到关网头一天,甚至前两小时。虽然这是慎重的表现,可实则是填报过程的煎熬和忐忑不安。看着这些寒窗苦读十余载的学子,生活没怕,高考没怕,最后竟因志愿而泪奔,不禁感到心痛。为此,特就高考志愿填报开发一款辅助系统,解决考生们的诸多疑虑,并能为考生高效筛选心仪院校和专业提供参考。本系统一经开发成功,与网上相关志愿填报APP及生活中哪些高考志愿规划中心不同的是数据来源权威、可靠,筛选评估科学、合理,关键是免费。为了实现考生和家长们的殷切期望,笔者设计开发了高考志愿填报辅助系统,不敢独享,特奉献给大家。
一、数据准备
为保证高考志愿填报辅助系统数据的真实性、准确性、权威性及操作上的智能性、高效性,笔者历经数年积累,收集了多年各个批次普通高校在川招生录取数据、各批次分专业录取数据及各批各专业(类)分院校录取数据等。数据来源于各年度高考指南。起初担心版权纠纷问题,完全采用手工录入,太费力还易错。尔后,我觉得数据是公开的,我的研究和开发目的是服务广大考生和家庭,又不收费,何不采用现今技术手段快速获取数据呢。 我是这样做的,将近几年高考指南数据张页裁切取下,放入打印、复印、扫描智能一体机,设置批量扫描,输出为多页PDF格式。这样,便得到了第一手资料,可这种格式的资料仅供保存、查阅还行,要想利用数据搜索功能快速查询、筛选还是个难题,于是我想到格式转换。起初用了很多款转换工具,但由于是多页同时转换,像OCR之类的软件均达不到理想的效果。无意间,在手机微信中翻到一款小程序“表格文字识别”,试用后,感觉挺不错。虽然一次只能转换一页,但效果挺好,至少比手工录入更高效、更可靠。于是我购买了它的VIP功能,才10元/年,完全能接受。接下来就是把PDF数据文件逐页进行转换,为了便于查询和校对,我以页码作为文件名分页存于同类数据文件夹。经数据校对后,再利用技术手段将多页数据合并,多批数据合并,并对数据进行整理,以备系统设计之用。
二、系统设计
第一步,新建一Excel工作簿(*.xlsx),并另存为Excel启用宏的工作簿(*.xlsm)。再通过Excel选项进入“信任中心”,点击信任中心设置→宏设置,勾选启用所有宏,在开发人员宏设置中勾选信任对VBA工程对象模型的访问。这样就可以利用Excel及其VBA强大的编程功能大显身手了。
第二步,将工作表Sheet1更名为“功能按钮”,在其内插入一窗体控件按钮更名为“一键汇总”,接着插入工作表并更名为“汇总表”用于存放同批多页汇总数据,这里所用代码较长,不便公开。
第三步,插入工作表并更名为“原始数据”,将汇总整理后的基础数据复制、粘贴至此表以备调用。在表中最左侧插入“辅助列Ⅰ”用于年度数据查询调用,插入“辅助列Ⅱ”用于其它数据查询调用。
第四步,插入工作表并更名为“数据处理”,A列设为辅助列,用于存放获取基础数据的关键词。设置若干列用于存放地域分解、院校类型分解、等位分平均差、等位分标准差相关数据,以便考生根据自己兴趣、生涯规划、高考成绩筛选出心仪的院校。
第五步,插入工作表并更名为“志愿数据”,此表数据来源于“数据处理”,通过代码选择性粘贴而得,不含任何公式,可使筛选更高效。
第六步,插入工作表并更名为“志愿筛选”,此表含考生基本信息、地域、院校类型、等位分平均差、等位分标准差分段筛选等选项,此表添加窗体控件按钮,命名为“志愿筛选”,也是实现院校志愿筛选的主要功能按钮,其实现代码也最长,不过本人设计过程中都给出了详尽的模块功能描述,非常易于理解。此表增设“返回打印”按钮,并能自动统计筛选所得院校数,二十所以内可打印备选,如果所得院校数太多,可进一步缩小筛选范围,以优选适宜院校。
第七步,插入“辅助打印”、“志愿打印”两表,在“志愿筛选”按钮中增加生成辅助打印数据及志愿打印数据的代码。在“志愿打印”表中插入“志愿打印”、“返回筛选”按钮,通过简单代码实现相应功能。插入不同年度、不同科类、各批次院校专业录取数据查询按钮,以便实现对应院校历年专业录取数据快速查询。此表实现了风险评估功能,以便对筛选出的院校进行调档风险评估,便于考生决策。
第八步,插入“志愿草表”,第一行导入考生基本信息,第二行录入必备信息相关字段,如院校代码、院校名称、专业代码、专业名称、招生计划、学费、相关要求等。此表数据主要来自招考报招生计划说明,需要自己结合前面筛选所得院校去翻查、填写。其中专业实录线可通过“志愿打印”表相关功能按钮快速查询,也可通过返回的页码在志愿指南书上去查询,其对应等位分由软件自动生成,并计算平均等位分及其标准差,用于斟酌判断。
至此,高考志愿填报辅助系统雏形基本完成,相关数据和功能仍在进一步收集、整理和完善中。
三、注册、登录
为保护自己的知识产权,可利用VB6.0程序设计语言,设计一个登录界面。把系统相关数据及软件主体打包压缩并设置解压密码,给高考志愿填报辅助系统设置打开密码和修改密码,使其进一步得到保密。已有账号、密码可直接登录,没有账号可先根据提示注册账号。点击“注册”按钮后,来到用户注册界面,输入账号、密码、姓名,点击“注册”即可。在该系统中,插入两个工作表,分别取名“考生信息”、“注册账号”,通过VB6.0控制Excel中的各种行为,注册时能将增加的账号自动注入名为“注册账号”的工作表,在“考生信息”表中,利用类似“=""&注册账号!A2”的公式统一账号、密码格式,以便登录时调用比对。
四、调试运行
研发本系统过程中,每个环节都需要进行调试,发现问题及时解决。发现的问题可能是功能上的,这个必须设法处理;也可能是使用习惯方面的;或是电脑分辨率、操作系统版本、Office版本等系统运行环境(包含硬、软件兼容性)方面的。通过近三年的努力,笔者进行了全面的或局部的各种调试数百次,解决了已发现的诸多问题。
五、完善系统
此款高考志愿填报辅助系统,优点在于无需联网即可实现其强大的功能,升级更新可随时进行,有信息技术基础的人均可操作。选择系统中“志愿筛选”工作表A9单元格,在其中输入“YJHY”即可取消对工作表及工作簿的保护,并还原隐藏的各部分功能组件,就像操作全新的工作表一样,更新数据。由于本系统多处设置自动化调取信息或自解压功能,许多安全软件会误报为病毒,甚至清除某些必要文件,阻止程序运行,加之系统运行需要一定的环境,如果同时向多款安全软件申报误判,会很复杂,有可能长久得不到信任正身,故在登录界面设有特别申明提示。其内容为:使用本系统前需退出电脑管家、安全卫士及杀毒软件等,检查并安装Microsoft Office。
鉴于笔者水平有限,虽然通过无数次的调试运行,解决了已发现的诸多问题,但是本系统仍可能存在不足或缺陷,恳请读者或本系统使用者提出宝贵意见。对于软件的授权、认证等问题仍在进一步思考和探索中,期待该系统的进一步完善。





