毕克书
[摘要] 机关事业单位干部信息的统计和管理工作,任务重,数据量大。本文针对这一问题,利用Excel VBA设计开发干部管理系统,并结合点聚公司开发的Web Office,实现局域网查看、修改、保存,大大地提高了工作效率,方便快捷地进行干部管理工作。
[关键词] Excel; VBA; Web Office; 干部管理
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 05. 027
[中图分类号]F272.92;TP393[文献标识码]A[文章编号]1673 - 0194(2012)05- 0051- 02
1前言
随着干部规模的不断扩大,干部的信息量也不断增加,需要开发有效的干部管理系统来提高干部管理工作的效率。以往各单位普遍采用的是人工管理形式,这种方式存在许多缺点,如效率低,统计烦琐,容易出错。因此如何利用较为先进的技术开发高效、安全、数据共享的信息化平台,也就是设计出稳定、全面、有效、操作简便的信息系统,就显得尤为重要。通过这样的系统可以做到信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量。
2Excel VBA简介
Excel 是微软办公套装软件的一个重要组成部分,它可以进行各种数据的处理、统计分析和辅助决策操作,广泛地应用于管理、统计、财经、金融等众多领域。在实际工作中,Excel被大量应用,其特点是简单易用,操作灵活。但是,Excel处理数据的缺点是,每一步都要由人工操作和控制,对重复性的工作,每次都要重复去做。
Excel VBA能够将重复的工作编写成程序,这样就能够提高效率和避免人为操作的错误。
VBA(Visual Basic for Applications)是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。在Excel中,使用VBA可以实现的功能主要包括:
(1) 创建报表。
(2) 对数据进行复杂的操作和分析。
(3) 使重复的工作自动化。
(4) 自定义Excel工具栏、菜单和界面。
(5) 自定义Excel,使其成为开发平台。
3系统主要功能设计
系统由4个Sheet表组成:干部数据库、干部基本信息表、干部任免审批表、干部信息统计。主要实现了3个方面的功能:干部数据的录入、干部任免审批表的输出和干部数据的统计。
(1) 干部数据的录入。干部数据的录入主要实现了干部数据由干部基本信息表录入到干部数据库当中。
(2) 干部任免审批表输出。在干部数据库中,选择要输出的信息行右击后,点击干部任免审批表实现数据输出到干部任免审批表当中。
(3) 干部数据的统计。按级别、学历、年龄统计干部数据。
4部分关键代码
4.1干部基本信息表录入数据
Application.ScreenUpdating = False
Dim I, x
x = 2
Do While Not (IsEmpty(Sheets("干部数据库").Cells(x, 4).Value))
x = x + 1
Loop
flag = 0
For I = 1 To x
If Sheets("干部基本信息表").Cells(4, 4) = Sheets("干部数据库").Cells(I, 4) And Sheets("干部基本信息表").Cells(3, 2) = Sheets("干部数据库").Cells(I, 2) Then
flag = 9
Exit For
End If
Next
If flag = 9 Then
x = I
End If
If Sheets("干部基本信息表").Cells(3, 2) = "" Then
Sheets("干部基本信息表").Cells(3, 2) = ""
Else
Sheets("干部数据库").Cells(x, 2) = Sheets("干部基本信息表").Cells(3, 2)'单位
Sheets("干部数据库").Cells(x, 4) = Sheets("干部基本信息表").Cells(4, 4)'名字
Sheets("干部数据库").Cells(x, 3) = Sheets("干部基本信息表").Cells(3, 5)'身份证号
Sheets("干部数据库").Cells(x, 5) = Sheets("干部基本信息表").Cells(4, 6)'性别
Sheets("干部数据库").Cells(x, 15) = Sheets("干部基本信息表").Cells(5, 2) '出生年月
以下省略
End If
End Sub
4.2干部任免审批表输出
Sub yjcx()
Application.ScreenUpdating = False
Dim x
x = ActiveCell.Row
Sheets("干部任免审批表").Activate
Sheets("干部任免审批表").Cells(1, 2) = Sheets("干部数据库").Cells(x, 2)
Sheets("干部任免审批表").Cells(1, 10) = Sheets("干部数据库").Cells(x, 3)
Sheets("干部任免審批表").Cells(3, 2) = Sheets("干部数据库").Cells(x, 4)
Sheets("干部任免审批表").Cells(3, 4) = Sheets("干部数据库").Cells(x, 5)'性别
Sheets("干部任免审批表").Cells(4, 2) = Sheets("干部数据库").Cells(x, 6)'民族
Sheets("干部任免审批表").Cells(4, 4) = Sheets("干部数据库").Cells(x, 20)'籍贯
Sheets("干部任免审批表").Cells(4, 6) = Sheets("干部数据库").Cells(x, 22)'出生地
以下省略
End if
End sub
4.3右键查询功能
Private Sub workbook_open()
Dim mycontrol As CommandBarControl
Set mycontrol = Application.CommandBars("cell").Controls.Add
With mycontrol
.FaceId = 352
.Caption = "干部任免审批表"
.OnAction = "yjcx"
End With
End Sub
4.4统计函数
利用Sumproduct、Countif函数对干部数据进行统计分析。
4.5装载入点聚Web Office
在操作系统中架设IIS服务,将点聚Web Office中ASP实例设为网站主目录,输入设置好的局域网网址,进入Web Office,新建一个Excel文件,将以上的代码复制进去,即可以实现局域网访问修改。
5结束语
本系统根据机关事业单位的实际需求进行设计和开发,切合实际。系统通用性能好,实用性强,易于推广。此系统可以对干部数据等进行高效的管理,以便全面地掌握干部的整体情况,提高管理者的工作效率,减少管理过程中漏洞的出现。