Excel 中的 ActiveX 控件,很多同学都不知道要怎么用,甚至连表单控件也有很多人没用过。
ActiveX 控件和表单控件的组件看上去都差不多,二者到底有什么区别呢?
表单控件我写过很多,比如我在 VBA 的案例教程中几乎每次都会使用表单控件。表单控件还有个常见用途是控制动态图表。以下是部分表单控件的教程,大家可以学习一下。
- 制作一个可以用下拉菜单控制的 Excel 动态图表
- Excel 用滚动条控制的动态图表
- Excel 制作带复选框的动态图表
上述案例如果用 ActiveX 控件来做,将会更加简单,因为 ActiveX 可以直接返回文本,而表单控件只能返回数值,还需要通过公式匹配出数值对应的文本。
今天我要教大家用 ActiveX 控件制作一个颇具个性化的下拉菜单,这恰恰是 ActiveX 控件的优势,因为表单控件无法自定义外观。
开始案例教学前,先了解一下表单控件和 ActiveX 控件分别能做什么,不能做什么。
可以:
- 表单控件可以在不使用 VBA 代码的情况下引用单元格数据并与其进行交互。
- 可以使用表单控件来运行宏。
不可以:
- 表单控件不能添加到用户表单、不能控制事件,也不能修改表单控件来运行 Web 脚本。
- 表单控件返回的结果是数值,而不能返回文本。
可以:
- ActiveX 控件可用于工作表表单(使用或不使用 VBA 代码都可以)和 VBA 用户表单。
- ActiveX 控件允许自定义外观、行为、字体和其他特性,具有很大的灵活性。
- 我们还可以控制与 ActiveX 控件进行交互时发生的不同事件;也可以编写宏来响应与 ActiveX 控件关联的事件。
- ActicveX 控件可以直接返回所选列表中的文本内容。
不可以:
- 无法从用户界面将 ActiveX 控件添加到图表工作表,也无法将其添加到 XLM 宏工作表。
- 不能将宏分配为直接从 ActiveX 控件运行,而表单控件则可以。
请注意:并非所有 ActiveX 控件都可以直接用于工作表;有些 ActiveX 控件只能用于 VBA 用户表单。 如果向工作表中添加这些特殊 ActiveX 控件的话,Excel 会显示消息“不能插入对象”。
用 ActicveX 控件在 F2 单元格制作姓名下拉菜单,筛选姓名,即可出现对应的分数。效果如下图 2 所示。
1. 选择菜单栏的“开发工具”-->“插入”--> 选择“ActiveX 控件”区域的“组合框”
2. 在 F2 单元格勾勒出下拉框的大小
3. 选中 ActiveX 组合框 --> 右键单击 --> 在弹出的菜单中选择“属性”
4. 在弹出的“属性”对话框中进行以下设置:
- LinkedCell:输入“F2”
- ListFillRange:输入“A2:A10”
5. 选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,退出设计模式。
现在点击下拉框旁边的小箭头,就会出现姓名列表。
从前面对 ActiveX 控件的介绍中可以知道,它有别于表单控件的一点是:可以直接返回文本内容,而表单控件只能返回数字。
从下图可以看出,选中 F2 单元格,即控件值所链接的单元格,其内容就是下拉菜单中的文本。
这正是 ActiveX 控件的优势之一,也因此使得接下来的分数查询变得很简单,只需使用大家非常熟悉的 vlookup 即可。
6. 在 G2 单元格中输入以下公式,向右拖动复制公式:
=VLOOKUP($F$2,$A:$D,COLUMN(B1),0)
请注意单元格的绝对和相对引用。
至此,ActiveX 控件下拉菜单就制作好了。
前面介绍过,ActiveX 控件的灵活之处在于可以自定义外观,所以接下来我们还可以做一些美化。
7. 选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,启用设计模式。
8. 选中 ActiveX 控件 --> 右键单击 --> 在弹出的菜单中选择“属性”
9. 在弹出的“属性”对话框中,点击 BackColor 最右边的小箭头 --> 选择所需的背景色
10. 点击 Font 最右边的按钮
11. 在弹出的“字体”对话中设置所需的字体、字形和大小等,比如本例中我将字体改为中文常用的“微软雅黑”--> 点击“确定”
12. 设置完毕后关闭“属性”对话框 --> 再次选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,退出设计模式,一个极具个性化的下拉菜单就制作完成了。
以下就是实际演示效果。
很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。
现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。
,