首页 > Excel专区 > Excel函数 >

如何通过VBA实现Excel 信息增删改查系统

Excel函数 2023-01-08

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

信息增删改查系统-VBA实现效果

本期,小编将通过一个很全面的实例-信息增删改查系统,来带大家熟悉VBA编程。相信,只要你掌握了这个实例,基本上就掌握了70%的VBA知识,剩下的就只是查查资料的事情,从此不再害怕VBA编程。

为了让大家清楚该实例的功能,先看一下操作的动态演示吧:

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

信息增删改查系统,功能操作演示

OK,看完了动态演示,相信大家想知道如何通过VBA代码的方式实现的吧,其实套路很简单。

1. 准备工作 - 界面创建

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

界面搭建

插入工号文本框,命名为EmplNo,请记住这个控件名称,因为VBA代码中会通过控件名称获取该文本框输入之

插入查询,保存,删除 按钮,并且指定各自按钮的单击事件。单击事件,指的是当某个按钮在点击的时候,需要系统自动执行的代码。例如,我们指定了各自按钮单击时,执行的事件分别为:查询_Click(), 保存_Click(),删除_Click()。

关于表格,自己可以画,就略过了。

接下来,就是介绍一下,如何在查询_Click(), 保存_Click(),删除_Click()三个事件方法中,添砖加瓦。

2. 代码具体实现

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

VBA-查询

查询_Click():

获取员工号文本框[EmplNo]的值,然后去[员工考核信息表2]Sheet中的第一列查找EmplNo的值。查到的话,将所处行号赋予全局变量[destCurRow],并调用[findi]方法;找不到的话,提示信息:"not found!"。

findi():

从[员工考核信息表2]Sheet中,获取行号为全局变量[destCurRow],列号为1,2,3,4的单元格的值,分别赋予[员工考核信息新增修改查询删除2]Sheet中的A6, B6, C6, D6单元格。

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

VBA-保存

保存_Click():

在[员工考核信息新增修改查询删除2]Sheet中,从第六行开始循环读取。

在循环体内,将读取的行号赋给变量[sourceCurRow],直到单元格(sourceCurRow, 1)为空白单元格的时候,即表格内员工为空的时候退出循环。

在循环体内,根据员工去[员工考核信息表2]Sheet中的第一列查找。找不到的话,在[员工考核信息表2]Sheet最后一行下面新增一条数据;找的到的话,更新[员工考核信息表2]Sheet中对应的数据。

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

VBA-删除

先询问用户是否确认删除,如果确认的话,就删除;如果拒绝的话,就不删除。

3. 代码调试

通过代码调试,有助于帮助你清楚的知道每一行代码的作用,请看下面的代码调试的演示:

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

VBA-代码调试

4. 代码如何写,如何查资料:

很多人会问,这些代码都是怎么查到的,要我写的话,我根本就不会啊。这里有几种方法查VBA的资料:百度,Excel VBA官方帮助,通过录制宏探析代码。这里主要介绍一下第二种方式,如下图:

Excel 信息增删改查系统-VBA实现 经典案例 从此不再害怕VBA编程

VBA帮助

Alt+F11打开VBA代码编辑器后,点帮助进来后,可以搜索关键字搜索想要查询的方法含义。

通过多接触实例,自己可以将实例中用到的代码片段,根据功能实现点,按照关键字总结归纳在云笔记中,供以后参阅。例如本例中,有几个功能点:单元格读取,插入,单元格查询,循环


Copyright © 2016-2023 office学习教程网 office.tqzw.net.cn. All Rights Reserved.