Excel 中的 ActiveX 控件,很多同学都不知道要怎么用,甚至连表单控件也有很多人没用过。


ActiveX 控件和表单控件的组件看上去都差不多,二者到底有什么区别呢?


表单控件我写过很多,比如我在 VBA 的案例教程中几乎每次都会使用表单控件。表单控件还有个常见用途是控制动态图表。以下是部分表单控件的教程,大家可以学习一下。


上述案例如果用 ActiveX 控件来做,将会更加简单,因为 ActiveX 可以直接返回文本,而表单控件只能返回数值,还需要通过公式匹配出数值对应的文本。


今天我要教大家用 ActiveX 控件制作一个颇具个性化的下拉菜单,这恰恰是 ActiveX 控件的优势,因为表单控件无法自定义外观。


开始案例教学前,先了解一下表单控件和 ActiveX 控件分别能做什么,不能做什么。


表单控件:

可以:

不可以:


ActiveX 控件:

可以:

不可以:


请注意:并非所有 ActiveX 控件都可以直接用于工作表;有些 ActiveX 控件只能用于 VBA 用户表单。 如果向工作表中添加这些特殊 ActiveX 控件的话,Excel 会显示消息“不能插入对象”。


案例:


用 ActicveX 控件在 F2 单元格制作姓名下拉菜单,筛选姓名,即可出现对应的分数。效果如下图 2 所示。

excel activex控件(ExcelActiveX控件到底有啥用)(1)

excel activex控件(ExcelActiveX控件到底有啥用)(2)


解决方案:


1. 选择菜单栏的“开发工具”-->“插入”--> 选择“ActiveX 控件”区域的“组合框”

excel activex控件(ExcelActiveX控件到底有啥用)(3)


2. 在 F2 单元格勾勒出下拉框的大小

excel activex控件(ExcelActiveX控件到底有啥用)(4)


3. 选中 ActiveX 组合框 --> 右键单击 --> 在弹出的菜单中选择“属性”

excel activex控件(ExcelActiveX控件到底有啥用)(5)


4. 在弹出的“属性”对话框中进行以下设置:

excel activex控件(ExcelActiveX控件到底有啥用)(6)

excel activex控件(ExcelActiveX控件到底有啥用)(7)


5. 选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,退出设计模式。

excel activex控件(ExcelActiveX控件到底有啥用)(8)


现在点击下拉框旁边的小箭头,就会出现姓名列表。

excel activex控件(ExcelActiveX控件到底有啥用)(9)


从前面对 ActiveX 控件的介绍中可以知道,它有别于表单控件的一点是:可以直接返回文本内容,而表单控件只能返回数字。


从下图可以看出,选中 F2 单元格,即控件值所链接的单元格,其内容就是下拉菜单中的文本。


这正是 ActiveX 控件的优势之一,也因此使得接下来的分数查询变得很简单,只需使用大家非常熟悉的 vlookup 即可。

excel activex控件(ExcelActiveX控件到底有啥用)(10)


6. 在 G2 单元格中输入以下公式,向右拖动复制公式:

=VLOOKUP($F$2,$A:$D,COLUMN(B1),0)


请注意单元格的绝对和相对引用。

excel activex控件(ExcelActiveX控件到底有啥用)(11)

excel activex控件(ExcelActiveX控件到底有啥用)(12)

excel activex控件(ExcelActiveX控件到底有啥用)(13)


至此,ActiveX 控件下拉菜单就制作好了。


前面介绍过,ActiveX 控件的灵活之处在于可以自定义外观,所以接下来我们还可以做一些美化。

excel activex控件(ExcelActiveX控件到底有啥用)(14)

excel activex控件(ExcelActiveX控件到底有啥用)(15)


7. 选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,启用设计模式。

excel activex控件(ExcelActiveX控件到底有啥用)(16)


8. 选中 ActiveX 控件 --> 右键单击 --> 在弹出的菜单中选择“属性”

excel activex控件(ExcelActiveX控件到底有啥用)(17)


9. 在弹出的“属性”对话框中,点击 BackColor 最右边的小箭头 --> 选择所需的背景色

excel activex控件(ExcelActiveX控件到底有啥用)(18)


10. 点击 Font 最右边的按钮

excel activex控件(ExcelActiveX控件到底有啥用)(19)


11. 在弹出的“字体”对话中设置所需的字体、字形和大小等,比如本例中我将字体改为中文常用的“微软雅黑”--> 点击“确定”

excel activex控件(ExcelActiveX控件到底有啥用)(20)


12. 设置完毕后关闭“属性”对话框 --> 再次选择菜单栏的“开发工具”--> “控件”区域中的“设计模式”,退出设计模式,一个极具个性化的下拉菜单就制作完成了。

excel activex控件(ExcelActiveX控件到底有啥用)(21)


以下就是实际演示效果。

excel activex控件(ExcelActiveX控件到底有啥用)(22)

很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

,