ExcelActiveX控件到底有啥用如此美貌的下拉菜单非它不可

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 所示。

解决方案:

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 高手。

ExcelActiveX控件到底有啥用如此美貌的下拉菜单非它不可

Activex控件是什么?它的作用是什么?

ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。

ActiveX 控盯岩件是用于互联网的很小的程序,有时称为插件程序。它们会允许播放动画,或帮助执行任务,如在 Microsoft Update 安装安全更新,因此可以增强浏览体验。

在创建包括ActiveX程序时,主要的工作就是组件,一个可以自蚂宴足的在ActiveX网络(Windows,Mac,Linux)中任意运行的程序。这个组件就是ActiveX控件。ActiveX是Microsoft为抗衡Sun Microsystems的JAVA技术而提出的,此控件的功能和java applet功能类似。

扩展资料:

控件分类:

1、自动化服务器

可以由其他应用程序编程驱动的组件。自动化服务器至少包括一 个,也许是多个供其他应用程序生成和连接的基于IDispatch的接口。自动化服务器可以含有也可以没有用户界面(UI),这取决于服务器的特性和功能。

2、自动化控制器

那些使用和操纵自动化服务器的应用程序。

3、控件

ActiveX控件等价于以前的OLE控件或OCX。一个典型的控件包括设计时和运 行时的用户界面,唯一的IDispatch接口定义控件的方法和属性,唯一的 IConnectionPoint接口用于控件可引发的事件。

4、文档

ActiveX文档,即以前所说的DocObject,表示一种不仅仅是简单控件或自动 化服务器的对象。ActiveX文档在结构上是对OLE链接和模型的扩展,并对其所在的 容器具有更多控制权。一个最显著的变化是菜单的显示方式。

5、容器

ActiveX容器是一个可以作为自动化服务器、控件和文档凯物御宿主的应用程序。

参考资料来源:百度百科-Active控件

ExcelActiveX控件到底有啥用如此美貌的下拉菜单非它不可

excel的表单控件与Active X控件的区别?Active X控件可以实现下拉框的作用吗?

下面介绍下区别:

1、表单控件

表单控件是与早期版本的 Excel(从 Excel 5.0 版开始)兼容的原始控件。表单控件还适于在 XLM 宏工作表中使用。

1)如果希望在不使用VBA代码的情况下轻松引用单元格数据并与其进行交互,或者希望向图表工作表(图表工作表:工作簿中只包含图表的工作表。当希望单独查看图表或数据透视图(独立于工作表数据或数据透视表)时,图表工作表非常有用。)中添加控件,则使用表单控件。例如,在向工作表中添加列表框控件并将其链接到某个单元格后,可以为控件中所选项目的当前位置返回一个数值。接下来,可以将该数值与INDEX函数结合使用以从列表中选择不同的项目。

2)还可以使用表单控件来运行宏。可以将现有宏附加到控件,也可以编写或录制新宏。当表单用户单肆羡芦击控件时,该控件会运行宏。然而,不能将这些控件添加到用户表单中,不能使用它们控制事件,也不能修改它们以在网页中运行 Web 脚本。

2、ActiveX 控件

1)(ActiveX 控件:一种控件,如复选框或按钮,向用户提供选项或运行使任务自动化的宏或脚本。可在 Microsoft Visual Basic for Applications 中编写控件的宏或在 Microsoft 脚本编辑器中编写脚本。)可用于工作表表单(使用或不使用 VBA 代码)和 VBA 用户表单。通常,如果相对于表单控件所提供的灵活性,设计需要更大的灵活性,则使用 ActiveX 控件。ActiveX 控件具有大量可用于自定义其外观、行为、字体及其他特性的属性。

2)还可以控制与 ActiveX 控件进行交互时发生的不同事件。例如,可以执行不同的操作,具体取决于用户从列表框控件中所选择的选项;还可以查询数据库以在用户单击某个按钮时用项目重新填充组合框。还可以编写宏来响应与 ActiveX 控件关联的事件。表单用户与控件进行交互时,VBA 代码会随之运行以处理针对该控件发生的任何事件。

 3)计算机还包含由 Excel 和其他程序安装的多个 裂带ActiveX 控件,如 Calendar Control 12.0 和 Windows Media Player。

      3、要点

并非所有 ActiveX 控件都可以直接用于工作表;有些 ActiveX 控件只能用于 Visual Basic for Applications (VBA) (Visual Basic for Applications (VBA):Microsoft Visual Basic 的宏语言版本,用于编写基于 Microsoft Windows 的应用程派猜序,内置于多个 Microsoft 程序中。) 用户表单。如果尝试向工作表中添加这些特殊 ActiveX 控件中的任何一个控件,Excel 都会显示消息“不能插入对象”。

4、然而,无法从用户界面将 ActiveX 控件添加到图表工作表,也无法将其添加到 XLM 宏工作表。此外,不能像在表单控件中一样指定要直接从 ActiveX 控件运行的宏。

上一篇: 女销售原来靠这样卖房(楼盘置业顾问提成大概多少)
下一篇: 为什么我的表格不能插入行列了快捷键帮你搞定