徐立波
摘 要: 利用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).