pb自定义控件 事件_Excel ActiveX 控件到底有啥用?如此美貌的下拉菜单,非它不可...

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

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

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

  • 制作一个可以用下拉菜单控制的 Excel 动态图表
  • Excel 用滚动条控制的动态图表
  • Excel 制作带复选框的动态图表

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

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

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

表单控件:

可以:

  • 表单控件可以在不使用 VBA 代码的情况下引用单元格数据并与其进行交互。
  • 可以使用表单控件来运行宏。

不可以:

  • 表单控件不能添加到用户表单、不能控制事件,也不能修改表单控件来运行 Web 脚本。
  • 表单控件返回的结果是数值,而不能返回文本。

ActiveX 控件:

可以:

  • ActiveX 控件可用于工作表表单(使用或不使用 VBA 代码都可以)和 VBA 用户表单。
  • ActiveX 控件允许自定义外观、行为、字体和其他特性,具有很大的灵活性。
  • 我们还可以控制与 ActiveX 控件进行交互时发生的不同事件;也可以编写宏来响应与 ActiveX 控件关联的事件。
  • ActicveX 控件可以直接返回所选列表中的文本内容。

不可以:

  • 无法从用户界面将 ActiveX 控件添加到图表工作表,也无法将其添加到 XLM 宏工作表。
  • 不能将宏分配为直接从 ActiveX 控件运行,而表单控件则可以。

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

案例:

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

689fa42409aca940d85476c66bd41ab1.png
17a470498b2251453cf31d0fd7c8f132.gif

解决方案:

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

0d97ba96c567aa05a2c8c329b300ee0d.png

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

c5020915529552d5a754833c92d44347.png

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

b5dfe596c6842e8a3c986870ad155980.png

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

  • LinkedCell:输入“F2”
  • ListFillRange:输入“A2:A10”
cd13fb4c6aef70d885522da85a039673.png
0fb88b7065f0c7bb1f3d4e78e8ebafd4.png

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

8eefb1a0e788c60363d30845af40e578.png

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

5f06d04eefed1619fc4758d305da2eed.png

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

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

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

f0b6463d618df27bebb7256394a91dcc.png

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

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

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

aad03f8562cda946ee0103b32e519d74.png
955417df8ca55176da0c138d16376821.png
1cee535da68a0337ce408305309d9266.png

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

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

7e6ff017e5745d98271f2cc42f09df4a.gif
1717af6c5927b00ffa3d3c7d20ce24af.png

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

a8fa8d788045148435d0109f11981a65.png

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

cef334de30cc1f8509522d7c9fdcd567.png

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

dca742470e13a53fda9ce2557022bf0b.png

10. 点击 Font 最右边的按钮

196ec8e57228118df86c674273ce951c.png

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

9fa527ee68c75fb9901433307c06e5e6.png

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

6055a0496312e92be5721a6415726c5f.png

以下就是实际演示效果。

17a470498b2251453cf31d0fd7c8f132.gif

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

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

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值