Excel VBA员工管理系统开发
发布时间:2022-09-19 14:38:50
“什么?才学了点皮毛就可以开发系统了?”我想您读到这儿,看到本篇的题目,一定会感到非常疑惑。
如果您仔细体会了前面的小短文内容,就可以开始着手来试着做一些有趣的事情了。不错!现在我们就尝试用已学到的知识来逐步开发一套小系统。为何这么快就可以运用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
.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
代码很简单,用到的都是前面我们学到的知识。在”员工基本信息表”中填写相应的数据,运行上面的代码,可以看到数据会自动填充到”员工信息数据库”的第二行中。
这里的代码只是机械地将一个表中的数据复制到另一个表中相应的单元格,并且只能实现填充固定一行的数据。
接下来,我们边进一步学习,边完善我们的系统,使系统逐渐灵活方便起来。


猜你喜欢
- 方法一:搜狗输入法打字不显示选字框,请看看输入法设置是否有问题,右键点击搜狗皮肤,设置属性,看看【全屏程序时隐藏状态栏】是否勾选,去掉它试试
- 表格数据所表达的信息常常显得枯燥乏味,不易理解,如果制成图表,则能一目了然。例如,图1所示Office所带的图表制作程序—Graph能利用表
- 这种效果,一般叫做文字云,或者文字墙。做这种效果,可以手动一点点的排布,也可以用专用的工具快速生成。工具的类型很多,下面我分四个方面来介绍。
- 很多时候我们使用word文档的时候,需要配上一个三维立体图,假如纯手工的用线条构造的话,不但费时而且效果也不好,其实word中已经自带了绘制
- win10文件夹打不开显示正在处理中该怎么办?最近遇到一个问题,win10系统打开文件夹的时候,总是提示正在处理它,该怎么办呢?下面分享wi
- ppt怎么设计创意的逗号时间线?ppt中想要创建一个漂亮的时间线,该怎么创建呢?下面我们就来看看ppt创建时间线的教程,需要的朋友可以参考下
- 我们平时在Win10系统遇到蓝屏0x0000003b computerzlock_x64.sys故障怎么办呢,其实蓝屏代码不怎么需要管,主要
- windows10开机自检怎么取消?在使用win10系统的过程中,如发生某些意外情况,比如系统突然崩溃,断电等问题,再次启动系统会进行开机自
- Win10安全中心怎么设置不扫描某个文件夹?大家都知道Win10自带的安全防护功能非常给力,在察觉到有病毒威胁的时候,会帮助用户快速地把文件
- Win7屏幕刷新率怎么设置?很多朋友们还不会,下面小编就给大家带来Win7系统设置屏幕刷新率的方法,一起来看看吧如果出现屏幕闪烁的情况,我们
- WIDECHAR 函数将单字节字符转换成双字节字符,与双字节字符集一起使用。适用版本Excel 2003+说明WIDECHAR 函数对于双字
- 有不少小伙伴在使用电脑的时候会突然出现蓝屏代码,那么当碰到0x00000c4的蓝屏代码时候应该怎么办呢,下面就和小编一起来看看0x00000
- Win10任务栏频繁卡死怎么办?很多小伙伴都遇到任务栏无反应,就算是重启也没有效果,遇到这种情况的话要怎么解决呢?小编为你带来三种解决方法,
- 还在为了选择哪款苹果系统优化软件苦恼吗?小编今天带来了5款精品mac系统优化供大家了解比较,方便选择更优质的神器哟,快来一起看看吧~了解5款
- MathType6.9是一款很方便的公式编辑软件,可以在office2013及更低版本的office上运行,但是无法在Office2016、
- 跟着Office2016的推出,PPT2016的新 功用 愈来愈 遭到 各人的 存眷。 此中,“变体”切换 结果 使人 线人一新。 操纵这个
- 1,什么是细胞词库?细胞词库是搜狗首创的、开放共享、可在线升级的细分化词库的功能名称。细胞词库相对于的系统默认词库而言的(如下图),其意义是
- 如何设置熊猫动态壁纸权限?熊猫壁纸是一款非常好用的手机壁纸设置软件,用户想要给手机主界面换个壁纸,就可以使用熊猫壁纸进行设置。但是想要使用其
- 在Win10中微软提供了让任务栏变透明的设置选项,不过它不像Win7中的Aero Glass那样可以调节透明度。但在Windows10中微软
- mac隔空投递怎么添加到菜单栏?mac系统想要将隔空投送这个功能显示在菜单栏,该怎么操作呢?下面我们就来看看详细的教程,需要的朋友可以参考下