手机版

在excel用户表单中实现级联下拉列表

时间:2021-09-19 来源:互联网 编辑:宝哥软件园 浏览:

在excel用户表单中实现级联下拉列表?在网站中,我们经常会遇到需要一个个选择下来的情况。选择第一个选项列表中的第一个数据,第二个选项列表中的第二个数据,依此类推。此外,以下选项列表的内容将根据之前选择的内容而变化。如下图所示。

就是使用Excel VBA用户表单的效果,实现起来非常简单。

首先,准备如下所示的数据。第1列单元格中的值是该列下方数据单元格区域的名称,需要提前使用name函数进行定义。

接下来,设计用户表单,如下所示。在VBE中,插入一个用户表单,并在上面放置三个组合框,分别命名为cmbProduct、cmbModel和cmbSubModel。

编写用户表单模块代码:

私有子用户表单_初始化()

在第一个组合框中添加一个值。

Cmbproduct.list=application .工作表function .转置(range ("product "))

末端接头

私有子cmbProduct _ Change()

cmbModel。Value=" "

cmbSubModel。Value=" "

选择案例CMB产品。价值

根据第一个组合框中的值。

在第二个组合框中添加相应的值。

案例“产品1”

Cmbmodel.list=application .工作表function .转置(range ("product 1 "))。

案例“产品2”

Cmbmodel.list=application .工作表function .转置(range ("product 2 "))。

其他情况

cmbModel。Value=" "

结束选择

末端接头

私有子cmbModel_Change()

cmbSubModel。Value=" "

选择案例CMb模型。价值

根据第二个组合框中的值。

在第三个组合框中添加一个值。

案例“模型11”

Cmubmodel.list=application .工作表function .转置(range ("model 11 "))。

案例“模型12”

cmubmodel . list=application . worksheet function .转置(range ("model 12 "))。

案例“模型13”

cmubmodel . list=application . worksheet function .转置(range ("model 13 "))。

案例“模型21”

cmubmodel . list=application . worksheet function .转置(range ("model 21 "))。

案例“模型22”

cmubmodel . list=application . worksheet function .转置(range ("model 22 "))。

案例“模型23”

cmubmodel . list=application . worksheet function .转置(range ("model 23 "))。

其他情况

cmbSubModel。Value=" "

结束选择

末端接头

此时,用户表单运行,也就是说,达到了上面显示的效果。您可以根据实际情况添加功能,例如将所选数据输入用户信息工作表或将其引导至相应的产品页面。

版权声明:在excel用户表单中实现级联下拉列表是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。