APP下载

基于Excel VBA的高校数据处理系统模型构建

2017-12-14魏明锐姚兴平

电脑与电信 2017年10期
关键词:窗体数据处理安徽

魏明锐 姚兴平

(1.安徽农业大学经济技术学院,安徽 合肥 230011;2.安徽涉外经济职业学院,安徽 合肥 230011)

基于Excel VBA的高校数据处理系统模型构建

魏明锐1,2姚兴平1,2

(1.安徽农业大学经济技术学院,安徽 合肥 230011;2.安徽涉外经济职业学院,安徽 合肥 230011)

Excel是目前普遍采用的数据处理软件,因其强大的高校多平台系统数据兼容处理能力而备受高校工作者好评。在日常工作中,为便于数据的常态化处理,经常会使用Excel VBA进行数据自动化数据处理。而采用Excel VBA如何构建模块化系统,使其能够对数据进行流程化处理是本文主要探讨的问题。

数据处理;系统模型;Excel VBA

1 引言

1.1 目的和意义

伴随着“互联网+”在教育领域的快速发展,当前高校教学管理部门的信息化水平正在逐年提高。各级各部门对于数据分析应用系统正大批量投入使用。但目前实际工作中的系统应用状况是,各高校教学管理部门和教辅部门一般都设计和建设了属于机构、业务本身的应用、流程以及数据的信息处理系统,各系统相互独立、异构,涵盖各自的业务内容,系统设计建设的时期不同、业务模式不同,信息化建设缺乏有效的总体规划,重复建设严重;同时又缺乏统一的设计标准,大多数系统都是由不同的厂商在不同的平台上,使用不同的语言进行开发的,信息交互共享困难,存在大量的信息孤岛和流程孤岛。为了有效整合分散异构的信息资源,消除“信息孤岛”现象,解决数据重复处理,提高高校教学管理部门的信息化水平,研究开发一款应用于实际工作中且能将各类系统进行数据共享、快速处理、易于升级的开源化系统的基础模型是本文解决的主要问题。

1.2 技术基础

Excel是微软office办公软件家族成员之一,其强大的数据统计处理,特别是函数运算功能,使其在各个领域成为目前常用的数据处理软件。但是,对于大部分用户也仅仅使用Excel简单的菜单命令来实现数据常用处理,很多高级功能并没有使用到。特别是现在办公系统越来越多,从各大系统中导出的数据表五花八门,要从大量的数据表中获取到需要的数据往往是一项比较繁琐的工作,特别是一些需要对数据进行特殊处理的常态化工作来说,仅仅使用简单的Excel菜单操作是比较难以实现的。在使用Excel强大的函数功能来解决此类问题时,伴随着数据量的增大,数据处理步骤的增加,数据处理工作就变得费工费时,数据的准确性都很难得到保证。其实,在Excel中如使用VBA编程功能,以上问题将轻松解决。

VBA(Visual Basic for Application),是用于开发的应用程序语言。同时VBA也并不是一个独立存在的程序设计语言,它必须基于一个主应用程序[1]。例如,基于微软Excel平台的VBA通过控制Excel中具有的对象库(特殊命令集)来实现其具有的功能。同时,由于VBA本身不是其他应用程序的一部分,可独立在其他应用程序外通过相应的对象来控制其他应用程序。从理论上讲,只要一个应用程序能够提供一个VBA可控的对象库,那么我们即可通过VBA实现该程序的自动化操作,如图1所示。

图1 VBA控制应用程序流程

2 Excel VBA在高校数据处理中的应用

目前高校数据业务处理工作时大多采用office作为主要的数据处理工具。其主要原因一是数据表通用性强;二是操作简单;三是操作环境兼容性高。而office办公套件基本都有VBA可控的对象库,特别是数据处理软件Excel更是较早具有VBA功能的软件。同时VBA相比C、JAVA、Delphi等语言更简单易学,甚至可以通过Excel宏录制功能录制代码,再在此基础上修改成通用型功能代码。因此,高校的数据处理,除一部分使用专业的数据处理系统,其他大量的临时性或具有不确定性繁杂数据工作,高校工作者基本上都是通过构建简易VBA代码解决实际工作中遇到的问题,如通过Excel VBA编译具有自动运算功能的财务数据、人事档案数据、教师工作量数据等相对独立的业务表格处理系统,这些专业性较强的微系统让业务数据处理简单化、高效化。但这些构建的系统模块既独立又单一,不具有代表性和通用性。因此,通过归纳总结高校数据处理工作的共性,梳理数据间的联系,构建适用于高校数据处理特点的系统模型势在必行。

3 以Excel VBA为基础设计高校数据处理系统

高校工作具有较高的流程化和阶段性,且工作模式较为单一。搞清楚工作流程和数据处理的要求,将为我们开发数据处理系统带来了很大的便利。高校数据处理系统也应有其他行业数据处理系统所具有的特点:一是必要的安全性,保证一部分数据能够具有一定的保密性;二是数据能够快速导入、导出;三是数据处理模块要简单高效且易重构;四是解决数据的存储等问题。结合以上几点可对数据处理系统针对系统登录、数据导入导出、数据加工处理和数据的存储等方面进行模块化设计,如图2所示。

图2 数据处理系统架构图

3.1 系统登录模块

登录窗口的设计按照系统设计基本要求,要有“登录户名”、“登录密码”等窗体要素,如图3所示。

图3 Excel VBA构建系统登录窗口设计

通过Workbook_open事件自动Load登录窗体。如输入的用户名和密码准确无误,则通过调整表格Visible属性来控制表格是否可用;否则Unload登录窗体,保存并关闭打开的工作簿。此处为了防止出现代码执行时窗口跳转等闪屏的问题,可通过添加Application.ScreenUpdating=False语句,关闭屏幕刷新,屏蔽代码运行过程中的窗口跳转。

3.2 数据导入、导出模块

(1)数据的导入

数据的导入是系统数据快速处理的前提条件,通过VBA工程设计导入工具窗体,如图4所示。通过窗体添加CommonDialog控件实现文件的打开、另存为等功能。需要注意的是,虽然CommonDialog控件在Visual Basic和Microsoft Windows动态连接库Commdlg.dll例程之间提供了接口。但是为了使用该控件创建对话框,必须要求Commdlg.dll在Microsoft WindowsSystem目录下,所以要求用户提前安装该动态链接库文件,否则该功能无效。

图4 数据导入窗体设计

(2)数据的导出

对于数据的导出,可通过GetSaveAsFilename语句执行文件另存为工作。当然在Excel VBA环境下,该语句通过Application来调用,如图5所示。

3.3 数据处理模块

数据处理模块是数据处理系统中的核心模块。模块设计的总体思路是把握数据处理的特点。对于高校数据处理工作,主要包括对数据进行排序、函数运算、数据统计汇总、格式调整等,如图6所示。通过判断CheckBox的Visible属性,当属性为True时执行相关处理语句,反之为False时跳过该行语句,并判断执行下一个CheckBox的Visible属性,条件满足时执行相应代码。

图5 数据导出另存为对话框调用

图6 数据处理工具设计

3.4 数据存储模块

系统数据的保存是保障处理数据安全性的关键。对于单机版系统的数据保存,可通过建立独立数据保存数据库表,通过数组代码批量将处理后的数据转移保存至独立的数据库表中;而对于网络数据库版系统则需要建立网络数据库将数据保存至服务器数据库中。

4 结束语

通过VBA编程实现用户登录验证,登录模块判断该用户类别,自动进入相应数据处理子系统。用户通过数据导入工具将需要处理的数据快速导入;再通过数据处理工具对系统数据进行业务性处理。对于处理完成的数据,用户可以选择将数据保存到数据表中或是导出他用。整个数据处理流程仅需依据系统导航提示,点击系统相应的选项或按钮即可实现原来需要纷繁复杂的函数重复编码及菜单命令操作才能实现的高级功能。使数据处理流程化,工作简单高效。同时,由于VBA与VB编程方法类似,对于高校工作者学习VBA编程实现系统二次开发扩展也是非常容易入手的,系统开发也能实现零成本和简易化。

[1]V.K工作室.Excel2000 VBA入门[M].北京:科学出版社,2001.

Establishment of College Data Processing System Model Based on Excel VBA

Wei Mingrui1,2Yao Xingping1,2
(1.Economic and Technical College ofAnhuiAgricultural University,Hefei 230011,Anhui;2.Anhui International Economic College,Hefei 230011,Anhui)

Excel is a data processing software in general use.It is well

by college workers because of its ability to handle the data of multi-platform system data.In daily work,in order to facilitate the normalization of data processing,Excel VBA is often used in automated data processing.This paper mainly discussed how to build a modular system with Excel VBA to process the data in workflow.

data processing;system model;Excel VBA

TP319

A

1008-6609(2017)10-0029-03

魏明锐(1983-),男,安徽长丰人,硕士,讲师,研究方向为计算机技术、电子商务。

安徽省高校自然科学研究重点项目:基于ExcelVBA模块化高校跨平台数据共享处理系统开源化模型的设计研究,项目编号:KJ2017A889。

猜你喜欢

窗体数据处理安徽
认知诊断缺失数据处理方法的比较:零替换、多重插补与极大似然估计法*
ILWT-EEMD数据处理的ELM滚动轴承故障诊断
试谈Access 2007数据库在林业档案管理中的应用
安徽医改自我完善主动纠错
安徽药采如何“三步走”
安徽 诸多方面走在前列
安徽为什么选择带量采购
基于希尔伯特- 黄变换的去噪法在外测数据处理中的应用
Matlab在密立根油滴实验数据处理中的应用
巧设WPS窗体控件让表格填写更规范