进行 Excel VBA 开发,需要使用「开发工具」选项卡包含的各项命令。

默认情况下,「开发工具」选项卡是隐藏状态,需要手动启用。第一次启用后,在以后每次打开工作簿时,都会自动显示该选项卡。

启用开发工具

第一步: 在功能区任意一区域点击右键,弹出的菜单中选择「自定义功能区」。

选择自定义功能区

第二步: 在右侧选项卡列表中,找到「开发工具」并勾选。

勾选开发工具

第三步: 点击确定,这时在功能区可以看到「开发工具」了。

开发工具已启用

认识开发工具

开发工具选项卡共包含三组命令,其中「代码组」的命令是使用最频繁的一组命令,「加载项组合控件组」的命令则使用的较少。

  • Visual Basic: 打开 VBA 编辑器,快捷键是 Alt + F11
  • 宏: 打开宏列表,并且可以对列表中的宏进行编辑,例如运行、修改、删除等。这里的宏,就是我们在前一篇中说到的过程。
  • 录制宏: 将键盘和鼠标操作,自动转换成 VBA 代码。这个功能在实际的开发过程中非常有用。具体用法以后的文章中介绍。
  • 使用相对引用: 录制宏时的设置选项。
  • 宏安全性: 设置 Excel 如何对待包含 VBA 代码的工作簿。因为存在一些恶意的代码,所以一般将宏安全性设置为禁用。

使用 VBA 编辑器

打开 VBA 编辑器

方法一 使用开发工具选项卡。点击开发工具选项卡 Visual Basic 命令。

工具选项卡

方法二 工作表右键菜单。在任意工作表标签上方,右键,在弹出的选项列表中,选择「查看代码」。

方法三 使用快捷键 Alt + F11

认识 VBA 编辑器

VBA 编辑器的界面

  • 工具栏: 编辑器命令栏,与 Excel 功能区域类似,包含 Excel VBA 开发相关的命令。
  • VBA 工程: 显示当前 VBA 工程包含的所有对象。通常,一个工作簿就是一个 VBA 工程,其中包括 Excel 对象、工作表对象、模块等。
  • 属性窗口: 查看和设置选中对象的属性的窗口。
  • 代码编辑窗口: 实际编写代码的位置。编写、修改、保存代码,都在这里进行。
  • 立即窗口: 代码运行过程中,打印出的内容,在立即窗口中显示。一般用于调试代码。

管理 VBA 工程

通常,一个工作簿就是一个 VBA 工程,其中包括 Excel 对象、工作表对象、模块等。当多个工作簿同时打开时,他们公用同一个 VBA 编辑器,VBA 工程界面显示所有的 VBA 工程。

插入模块

在一个 VBA 工程中想要插入新的模块时,可在 VBA 工程右键,选择插入类型即可。

插入模块

删除模块

选中模块,右键,选择「移除 模块」

删除模块

修改对象/模块属性

当点击 VBA 工程界面中任意一个 Excel 对象或模块时,在下方的属性窗口显示选中对象的各项属性信息。其中左侧是属性名,右侧是属性值,在这里可以直接手动修改属性值。

以下为一个 Excel 工作表对象的属性窗口。

模块的相关属性

运行 VBA 代码

编辑器中运行 VBA 代码,可能是执行最频繁的操作了。在开发过程中,每更新一次代码,可能需要运行,看一下其结果是否正确。

现在「模块1」中有以下一段代码:

1
2
3
4
5
Sub MyCode()

Sheet1.Range("A1") = "Hello World"

End Sub

代码的作用是,在 Sheet1 工作表 A1 单元格,写入 Hello World 内容。

在编辑器中运行 VBA 代码,有以下 3 种方法:

1. 使用工具栏命令

首选,将光标放置在要运行的代码的任意一处,再在工具栏选择「运行」→「运行子过程/用户窗体」命令。

2. 使用快捷工具栏命令

首选,将光标放置在要运行的代码的任意一处,再点击快捷工具栏「▶ 」按钮。

3. 使用快捷键 F5

首选,将光标放置在要运行的代码的任意一处,再使用快捷键 F5,即可运行代码。

方法二 运行代码效果如下:

运行完成

效果演示

保存文件

VBA 代码的工作簿,须保存为 启用宏的工作簿,后缀为 .xlsm

在「文件」 –> 「另存为」 –> 「excel 启用宏的工作簿(.xlsm)」

参考链接