通过之前的几篇教程,我们已经对 Excel VBA 有了基本的认识,并且已经初步学会使用 VBA 编辑器。如果你还没有阅读,建议先阅读学习。

  1. 什么是 Excel VBA?
  2. Excel VBA 中的基本概念
  3. 启用 Excel 开发工具
  4. 设置宏安全性
  5. 保存含 VBA 代码的工作簿
  6. 使用 VBA 编辑器进行 Excel VBA 开发

今天的教程中,介绍如何从零开始,编写一个 VBA 宏,即一个 VBA 过程。建议按照步骤自己动手实践,手动输入代码并运行。

戳我学习>>知识兔精品课《Office2019零基础入门精通全套大师级课程》

步骤 1 创建启用宏的工作簿

知识兔

首先新建一个工作簿,并将工作簿保存为「启用宏的工作簿」类型。详细步骤查看这篇文章。

编写你的第一个 VBA 宏

 

步骤 2 打开 VBA 编辑器

知识兔

通过功能区「开发工具 → 代码→Visual Basic」或快捷键 Alt + F11 打开 VBA 编辑器。详细步骤参考这篇文章。

编写你的第一个 VBA 宏

 

步骤 3 插入一个新模块

知识兔

Excel 工作簿中的 VBA 代码通常保存在工作表对象或模块中。本例中,我们用模块保存 VBA 代码。

首先选中左侧工程列表中的工作簿,后右键,在弹出的选项列表中,选择「插入」。二级菜单中,选择「模块」,完成插入新模块。

编写你的第一个 VBA 宏

 

插入完成后,在工程列表对应工作簿内,在模块文件夹下,显示新插入的模块。新插入的模块的默认名称是,模块 x,本例中是模块1。在属性窗口,可以修改模块的名称。

编写你的第一个 VBA 宏

 

步骤 4 打开模块

知识兔

双击上一步插入的模块1,在右侧代码窗口区域里,将打开模块1的代码编辑器。在右侧代码窗口中当前打开的代码编辑器所对应的模块,在编辑器标题末尾可以看到。

编写你的第一个 VBA 宏

 

步骤 5 创建一个宏(VBA 过程)

知识兔

在代码编辑窗口中,输入以下代码:

Sub MyCode()    End Sub

这段代码是一个空的 VBA 过程,只有开始和结束。过程的其他代码,都在这中间编写。

其中 Sub 是 Subroutine 的缩写,直译过来是子程序。在 VBA 中表示一个过程,也是代表一个过程的开始。下一行 End Sub 表示过程的结束。

编写你的第一个 VBA 宏

 

步骤 6 编写 VBA 过程实体部分

知识兔

过程的实体部分指的是,真正会被执行的部分。上一步创建的是一个空的 VBA 过程,里面不包含实体代码。虽然可以正常运行,但是不会有结果输出。

这一步我们编写 VBA 过程的实体部分。将如下代码输入到过程的开始和结束处之间。

MsgBox "Hello World"

编写你的第一个 VBA 宏

 

步骤 7 运行代码

知识兔

现在我们已经写完了一个完整的 VBA 过程,现在运行它,看一下结果。

将光标放置在代码的任何一处,点击工具栏上的运行「▶ 」按钮,或按 F5,运行代码。

编写你的第一个 VBA 宏

可以看到运行结果,Excel 弹出一个对话框,显示内容正是在代码中编写的内容。

编写你的第一个 VBA 宏

 

总结

知识兔

本篇教程介绍了如何从零开始编写 VBA 过程,基本步骤如下:

  1. 插入模块
  2. 创建空过程
  3. 编写过程的实体
  4. 运行过程