Excel 信息增删改查系统
信息增删改查系统-VBA实现效果
本期,小编将通过一个很全面的实例-信息增删改查系统,来带大家熟悉VBA编程。相信,只要你掌握了这个实例,基本上就掌握了70%的VBA知识,剩下的就只是查查资料的事情,从此不再害怕VBA编程。为了让大家清楚该实例的功能,先看一下操作的动态演示吧:
信息增删改查系统,功能操作演示
OK,看完了动态演示,相信大家想知道如何通过VBA代码的方式实现的吧,其实套路很简单。
1. 准备工作 - 界面创建界面搭建
插入工号文本框,命名为EmplNo,请记住这个控件名称,因为VBA代码中会通过控件名称获取该文本框输入之
插入查询,保存,删除 按钮,并且指定各自按钮的单击事件。单击事件,指的是当某个按钮在点击的时候,需要系统自动执行的代码。例如,我们指定了各自按钮单击时,执行的事件分别为:查询_Click(), 保存_Click(),删除_Click()。
关于表格,自己可以画,就略过了。
接下来,就是介绍一下,如何在查询_Click(), 保存_Click(),删除_Click()三个事件方法中,添砖加瓦。
2. 代码具体实现VBA-查询
查询_Click():
获取员工号文本框[EmplNo]的值,然后去[员工考核信息表2]Sheet中的第一列查找EmplNo的值。查到的话,将所处行号赋予全局变量[destCurRow],并调用[findi]方法;找不到的话,提示信息:'not found!'。
findi():
从[员工考核信息表2]Sheet中,获取行号为全局变量[destCurRow],列号为1,2,3,4的单元格的值,分别赋予[员工考核信息新增修改查询删除2]Sheet中的A6, B6, C6, D6单元格。
VBA-保存
保存_Click():
在[员工考核信息新增修改查询删除2]Sheet中,从第六行开始循环读取。
在循环体内,将读取的行号赋给变量[sourceCurRow],直到单元格(sourceCurRow, 1)为空白单元格的时候,即表格内员工为空的时候退出循环。
在循环体内,根据员工去[员工考核信息表2]Sheet中的第一列查找。找不到的话,在[员工考核信息表2]Sheet最后一行下面新增一条数据;找的到的话,更新[员工考核信息表2]Sheet中对应的数据。
VBA-删除
先询问用户是否确认删除,如果确认的话,就删除;如果拒绝的话,就不删除。
3. 代码调试通过代码调试,有助于帮助你清楚的知道每一行代码的作用,请看下面的代码调试的演示:
VBA-代码调试
4. 代码如何写,如何查资料:很多人会问,这些代码都是怎么查到的,要我写的话,我根本就不会啊。这里有几种方法查VBA的资料:百度,Excel VBA官方帮助,通过录制宏探析代码。这里主要介绍一下第二种方式,如下图:
VBA帮助
Alt+F11打开VBA代码编辑器后,点帮助进来后,可以搜索关键字搜索想要查询的方法含义。
通过多接触实例,自己可以将实例中用到的代码片段,根据功能实现点,按照关键字总结归纳在云笔记中,供以后参阅。例如本例中,有几个功能点:单元格读取,插入,单元格查询,循环