本文作者:office教程网

Excel VBA员工管理系统开发

office教程网 2023-12-12 06:53:11
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要:

“什么?才学了点皮毛就可以开发系统了?”我想您读到这儿,看到本篇的题目,一定会感到非常疑惑。

如果您仔细体会了前面的小短文内容,就可以开始着手来试着做一些有趣的事情了。不错!现在我们就尝试用已学到的知识来逐步开发一套小系统。为何这么快就可以运用VBA来开始实战了呢?这就是Excel作为一个开发平台的优势!

不过,在未开始之前,还是得声明一点,此时编写的代码会很“古板”,有很多约束,实现的功能也有限,你会觉得完全没有必要用VBA代码来实现。但我们此刻的目的是让您能够体会到Excel VBA的初步魅力,以及使用VBA实现手动操作的方法,更重要的是让您巩固前一阶段所学习到的知识。随着更加深入的学习,我们会逐步改善这个系统,使用的知识和技巧也会越多,系统功能也会更强大,系统也会越来越完善。

系统初步规划

员工管理系统的初步构想是:

员工按表格要求填写相应的信息。

自动汇总员工所填写的信息。

查询某员工的信息。

查询某员工的信息并能够自动显示在员工信息表中,方便打印输出。

分析员工的信息,例如毕业5年的员工有多少、具备高级职称的员工有多少。

其他一些扩展功能。(暂时未想到,根据需要扩展)

表格设计

根据初步构想,先在Excel中设计两个工作表。

“员工基本信息表”:便于员工填写信息。

“员工信息数据库”:汇总员工填写的信息。

工作表初步设计如下图所示:

其中,“员工信息数据库”表实际上是将“员工基本信息表”中所填写的数据按数据库记录格式汇总到一张表中。

代码

下面的代码实现将“员工基本信息表”中填写的数据写入到“员工信息数据库”中:

Sub TotalData()

‘声明Worksheet变量

Dim wksInfo As Worksheet

Dim wksBaseInfo As Worksheet

‘给wksInfo变量赋值

Set wksInfo = ThisWorkbook.Worksheets(“员工信息数据库”)

Set wksBaseInfo = ThisWorkbook.Worksheets(“员工基本信息表”)

With wksInfo

Excel VBA End With结构,专为对象而生

我们主要是和对象打交道,这包括各种各样的对象以及由这些对象组成的集合对象。我们来看看并学习Excel内部是如何处理对象的。 我们先来录制一个宏。 在Excel中,打开宏录制器,录制下面的操作:在工作表单元格A1中输入“Excel”,设置其字体为红色,单元格背景色为黄色。录制的代码如下: Sub 宏3() '

.Range(“A2”).Value = wksBaseInfo.Range(“B2”).Value

.Range(“B2”).Value = wksBaseInfo.Range(“F2”).Value

.Range(“C2”).Value = wksBaseInfo.Range(“B3”).Value

.Range(“D2”).Value = wksBaseInfo.Range(“D3”).Value

.Range(“E2”).Value = wksBaseInfo.Range(“F3”).Value

.Range(“F2”).Value = wksBaseInfo.Range(“B4”).Value

.Range(“G2”).Value = wksBaseInfo.Range(“D4”).Value

.Range(“H2”).Value = wksBaseInfo.Range(“F4”).Value

.Range(“I2”).Value = wksBaseInfo.Range(“B5”).Value

.Range(“J2”).Value = wksBaseInfo.Range(“F5”).Value

.Range(“K2”).Value = wksBaseInfo.Range(“B6”).Value

.Range(“L2”).Value = wksBaseInfo.Range(“D6”).Value

.Range(“M2”).Value = wksBaseInfo.Range(“F6”).Value

.Range(“N2”).Value = wksBaseInfo.Range(“B7”).Value

.Range(“O2”).Value = wksBaseInfo.Range(“F7”).Value

.Range(“P2”).Value = wksBaseInfo.Range(“B8”).Value

.Range(“Q2”).Value =wksBaseInfo.Range(“D8”).Value

.Range(“R2”).Value = wksBaseInfo.Range(“F8”).Value

.Range(“S2”).Value = wksBaseInfo.Range(“B9”).Value

.Range(“T2”).Value = wksBaseInfo.Range(“D9”).Value

.Range(“U2”).Value = wksBaseInfo.Range(“F9”).Value

.Range(“V2”).Value = wksBaseInfo.Range(“B10”).Value

.Range(“W2”).Value = wksBaseInfo.Range(“B11”).Value

.Range(“X2”).Value = wksBaseInfo.Range(“B12”).Value

End With

End Sub

代码很简单,用到的都是前面我们学到的知识。在”员工基本信息表”中填写相应的数据,运行上面的代码,可以看到数据会自动填充到”员工信息数据库”的第二行中。

这里的代码只是机械地将一个表中的数据复制到另一个表中相应的单元格,并且只能实现填充固定一行的数据。

接下来,我们边进一步学习,边完善我们的系统,使系统逐渐灵活方便起来。

Excel VBA对象变量

们已经了解了Excel VBA的变量,知道了如何给变量赋值。下面,我们详细谈谈Excel中很重要的对象变量。 变量除了可以表示数值、字符串等外,还可以表示一个工作簿、一张工作表、一个单元格,这就是对象变量(Object类型的变量)。 声明对象变量 对象变量的声明没有什么特殊之处,仍然是使用Dim语句或者Publi

后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:Excel VBA员工管理系统开发发布于2023-12-12 06:53:11
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

留言与评论(共有 0 条评论)
   
验证码: