Excel 中的 VBA 控件:窗体和 ActiveX
⚡ 智能摘要
Excel 中的 VBA 控件是构成图形用户界面的交互式元素,例如按钮、复选框和文本框。本页将介绍窗体控件和 ActiveX 控件,阐述两者的区别,并提供一个 ActiveX 命令按钮的分步示例。
VBA 控件:Excel 中的 VBA 表单控件和 ActiveX 控件
Excel 中的 VBA 表单/GUI 控件
GUI 是图形用户界面的缩写。GUI 是程序中与用户交互的部分。GUI 由控件组成。这些 Excel VBA 控件可用于表单。下表显示了一些最常用的 GUI VBA 控件。
| S / N | 通过积极争取让商标与其相匹配的域名优先注册来维护 | 描述 |
|---|---|---|
| 1 | 命令 | 用于执行代码 |
| 2 | 组合 Box | 用于向用户显示下拉列表 |
| 3 | 确保 Box | 用于真值或假值。多个复选框可以同时具有真值。 |
| 4 | 列表 Box | 用于向用户呈现简单列表 |
| 5 | 文本 Box | 用于接受用户输入 |
| 6 | 滚动条 | 用于提供用于导航目的的滚动条。 |
| 7 | 旋转按钮 | 通过单击旋转按钮中出现的向上或向下箭头来增加或减少数值 |
| 8 | 选项按钮 | 用于表示真值或假值。一次只能有一个选项按钮具有真值。 |
| 9 | 标签 | 用于向用户显示静态文本 |
| 10 | 图片 | 用于显示图像 |
| 11 | Toggl按钮 | 具有按下和未按下状态的按钮。 |
在 VBA GUI 控件中,
- 点击开发者选项卡
- 点击插入下拉按钮
您将获得以下下拉面板
如果将鼠标悬停在 VBA 表单控件上,控件的名称将显示如下
向电子表格添加 GUI 控件
我们现在将向工作簿添加一个命令按钮,为此我们必须
- 点击插入下拉菜单
- 单击命令按钮(ActiveX 控件),如上图所示
- 在表单上拖拽绘制按钮
设置 GUI 控件属性
我们现在将按钮的标题设置为更具描述性的内容
- 右键单击我们刚刚创建的等号按钮
- 选择属性菜单
- 您将看到以下属性窗口
- 将 name 属性设置为 btnButton。name 属性用于在代码窗口中标识控件。btn 是按钮的前缀。
- 将 Caption 属性设置为 Click Me。caption 属性中的文本是用户将在按钮上看到的内容。
完成后关闭窗口。
您将获得以下结果。
表单控件和ActiveX控件的区别
Excel 提供两类控件,选择合适的控件可以简化项目。窗体控件是 Excel 内置控件,运行单个指定的宏;而 ActiveX 控件是可编程对象,可通过 VBA 代码响应多种事件。下表对这两类控件进行了比较。
| 特性 | 表单控件 | ActiveX控件 |
|---|---|---|
| 设置 | 很简单;只需将一个宏分配给该控件即可。 | 需要 VBA 事件代码才能响应 |
| 物业 | 选项有限 | 内容广泛,包括字体、颜色和行为 |
| 活动 | 单击即可执行单个操作 | 诸如 Click、Change 和 GotFocus 等许多事件 |
| 兼容性 | 工程 Windows 和 Mac Excel | 工程 Windows 仅限 Excel |
| 最适合 | 快速、简单的练习题 | 交互式和动态用户表单 |
简而言之,当只需要一个宏时,使用 Form 控件;当界面需要丰富的属性或必须响应多个用户事件时,选择 ActiveX 控件。
条件
在构建 ActiveX 示例之前,请准备好工作簿,以便控件可用且宏可以保存。
配置 Microsoft Excel
正如我们在前面的教程中看到的,确保您的功能区有“开发人员”图标,如下所示。
现在,将 sheet1 重命名为“VBA Opera如下面的屏幕截图所示,将工作簿保存为 Excel 宏启用工作簿 (*.xlsm) 文件扩展名。(参见下图)
之后,单击“保存”按钮。
如何在 VBA 中使用 ActiveX 控件
工作簿准备就绪后,我们就可以添加一个可用的 ActiveX 按钮了。在本节关于 Excel ActiveX 控件的内容中,我们将学习如何在 VBA 中集成“command-click”按钮,并使用该按钮执行程序。
步骤1) 在此步骤中,单击 Active X Control 中的“插入按钮”选项。然后从中选择命令按钮选项。
步骤2) 要插入“clickcommandbutton1”,请将鼠标光标拖到 Excel 表中。
步骤3) 然后右键单击命令按钮,选择“查看”选项。 Code。
步骤4) 检查您是否在正确的工作表上。代码编辑器将打开。输入您的代码。
- 在代码中,我们定义了范围A1到A10。
- 此范围定义 Excel 表中的单元格编号从“A1 到 A10”。
- 接下来,我们定义字符串“Guru99 个 VBA 教程”代码
- 所以,当你在Excel中点击“命令按钮”时,它应该打印“Guru在单元格区域“A1 到 A10”中输入“99 VBA 教程”。
步骤5) 下一步,保存代码文件,然后退出编辑器。要返回 Excel 文件,请单击 Excel 工作表图标 在最左边。
步骤6) 在 Excel 表中,您将看到“设计模式”选项卡已打开。请确保它处于“关闭”状态,否则您的代码将无法运行。
步骤7) 当设计模式关闭时,它上面不会有绿色高亮。现在您可以单击命令按钮。
步骤8) 点击“CommandButton1”。它将打印“Guru在单元格区域“A1 到 A10”中输入“99 VBA 教程”。
下载包含上述代码的 Excel
VBA 中的常见 ActiveX 控件事件
ActiveX控件功能强大,因为它能够响应事件,也就是用户对控件执行的操作。每个事件都会运行其自身的子程序,因此同一个按钮可以根据用户的操作表现出不同的行为。最常见的事件如下所示。
- 点击 – 当用户单击控件时运行代码,即上面示例中使用的事件。
- 更改 – 当控件的值发生变化时运行,例如 typing 在文本框中输入或从组合框中选择项目。
- GotFocus / LostFocus – 当控件获得或失去焦点时运行,可用于验证输入。
- 按键响应 – 当控件处于活动状态时,用户按下某个键,该操作就会运行。
- 鼠标移动 – 当鼠标指针移动到控件上时运行。
- DblClick – 当用户双击控件时运行。
要为任何事件添加代码,请切换到设计模式,右键单击控件,然后选择“视图”。 Code然后从代码窗口顶部的下拉列表中选择事件。

















