EXCEL VBA在业绩统计中的应用

2015-09-10 07:22徐立波
考试周刊 2015年91期

徐立波

摘 要: 利用EXCEL和VBA语言能够完成论文,项目和发明专利等科研业绩材料的收集和汇总工作,具有开发周期短小、用户使用方便的特点。本文通过数据库表结构设计、用户界面设计和VBA语言编程实现科研业绩材料的管理和汇总。

关键词: EXCEL VBA 业绩统计

各高等院校和科研院经常需要对本单位科研人员的学术论文、科研教研项目、学术专著和发明专利等科研业绩材料进行收集、统计、计算、汇总和打印。由于科研人员众多,涉及的材料量大,因此需要设计一个完成填报功能和自动计算汇总功能的应用,利用EXCEL和VBA解决这个问题。

1. VBA简介

VBA(Visual Basic For Applications)是microsoft公司研发的可以提升Office系列办公软件功能的一种面向对象的程序设计语言。可以将VBA语言直接嵌入Word、Excel等软件中,用于定制和扩展Office的功能。VBA语言是Visual Basic的子集,具有功能强大、计算方便、便于二次开发的特点。

2.表结构设计

科研业绩统计涉及的表很多,包括学术论文表、项目信息表、学术专著表和发明专利表等。

(1) 学术论文表

(2)项目信息表

(3)学术专著表

(4)发明专利表

3.界面设计

根据科研业绩材料收集、统计、汇总和打印的实际需求,分别部署4个表格到EXCEL工作表sheet1到sheet4中,分别重命名为学术论文、项目信息、学术专著和发明专利表。然后新建汇总工作表,添加如下图所示6个按钮和相关信息。

设计EXCEL用户操作界面:

4.VBA编程

利用VBA编程语言分别编写各个按钮对应的程序,部分程序如下所示。

For i = 2 To 1000

If Worksheets("汇总").Cells(i, 3) = "" Then

Exit For

End If

Next i

Copy_Zone = "c2:k" & (i - 1)

Worksheets("汇总").Range(Copy_Zone).copy

temp = Worksheets("汇总").Cells(2, 4)

If Dir(ThisWorkbook.Path & "” & "导出数据存放", vbDirectory) = "" Then

MkDir ThisWorkbook.Path & "” & "导出数据存放"

End If

str1 = ThisWorkbook.Path & "” & "导出数据存放" & "” & temp & "从" & Worksheets("汇总").Cells(2, 7) & "到" & Worksheets("汇总").Cells(3, 7) & ".doc"

Set Wd = CreateObject("word.application")

Wd.Documents.Add.SaveAs Filename:=str1

Wd.Selection.TypeText (temp)

Wd.Selection.PasteExcelTable False, False, False

Wd.Selection.Tables(1).AutoFitBehavior (wdAutoFitWindow)

Wd.ActiveDocument.PageSetup.Orientation = wdOrientLandscape

Wd.ActiveDocument.Save

Wd.ActiveDocument.Close

Wd.Quit

Set Wd = Nothing

5.结语

通过EXCEL 和VBA语言设计开发的应用程序具有开发周期短小、用户使用方便的特点,较好地解决了一个单位内部的业绩材料收集和汇总出现的常见问题,能够减少出现错误的可能,提高办事人员的工作效率。

参考文献:

[1]任律. Excel VBA在水电工程安全监测数据处理中的应用[J].西华大学学报,2009.28(1).