在excel用户窗体中实现级联下拉列表
发布时间:2023-08-14 00:10:59
在excel用户窗体中实现级联下拉列表?在网站中,我们经常会碰到需要一层层向下选择的情况。在第一个选项列表中选择第一个数据,第二个选项列表中选择第二个数据,依此类推。并且,后面的选项列表内容会根据前面选择的内容而发生变化。如下所示。
上是使用Excel VBA用户窗体实现的效果,实现起来很简单。
首先,准备数据,如下所示。第1列单元格中的值分别是该列下方数据单元格区域的名称,这需要我们事先使用名称功能进行定义。
接着,设计用户窗体,如下所示。在VBE中,插入一个用户窗体,在上面放置3个组合框并分别命名为:cmbProduct、cmbModel和cmbSubModel。
编写用户窗体模块代码:
Private Sub UserForm_Initialize()
‘第1个组合框中添加值
cmbProduct.List =Application.WorksheetFunction.Transpose(Range(“产品”))
End Sub
Private Sub cmbProduct_Change()
cmbModel.Value = “”
cmbSubModel.Value = “”
Select Case cmbProduct.Value
‘根据第1个组合框中的值
‘在第2个组合框中添加相应的值
Case “产品1”
cmbModel.List =Application.WorksheetFunction.Transpose(Range(“产品1”))
Case “产品2”
cmbModel.List =Application.WorksheetFunction.Transpose(Range(“产品2”))
Case Else
cmbModel.Value = “”
End Select
End Sub
Private Sub cmbModel_Change()
cmbSubModel.Value = “”
Select Case cmbModel.Value
‘根据第2个组合框中的值
‘在第3个组合框中添加值
Case “型号11”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号11”))
Case “型号12”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号12”))
Case “型号13”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号13”))
Case “型号21”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号21”))
Case “型号22”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号22”))
Case “型号23”
cmbSubModel.List =Application.WorksheetFunction.Transpose(Range(“型号23”))
Case Else
cmbSubModel.Value = “”
End Select
End Sub
至此,运行用户窗体,即实现上所示的效果。你可以根据实际情况,添加功能,譬如选择好后,将选择的数据输入用户信息工作表或者导向到相应的产品页面。


猜你喜欢
- 数据分列是相对于数据合并而言的,数据分列就是把一个单元格里的数据拆分到至少两个单元格里,是不是很简单呢,那么在Excel2007版中怎么将数
- win10msconfig启动项全部禁用了怎么办?有用户在操作电脑的时候,不小心打开了msconfig,禁止了msconfig的所有启动项目
- 由于每次开机都重复拨通网络连接这一步骤,很麻烦,下面为大家分享一个开机自动连接ADSL宽带的方法,感兴趣的朋友可以参考下哈,希望对大家有所帮
- 谈及“安全模式”,相信网友们最先想到的就是微软旗下Windows操作系统中内置的一种特殊模式,毕竟在修复系统时经常会用到这一模式。那么,Wi
- 汉字输入是使用windows xp的入门操作,在便捷文档、聊天等等,都会使用到的,本文为大家介绍下输入法的使用,感兴趣的朋友可以参考下输入法
- 你的pdf文件需要压缩?PDF Squeezer是减少pdf文件大小的极简方法。该应用程序不会将PDF压缩为不可读的存档或ZIP文件;它仍然
- 电脑时根据指令进行数据处理的电子设备,电脑中的CPU决定了一次性处理的最大位数,现在的电脑基本上都是32位和64位的电脑,但是32位的电脑只
- 最近有Win7系统用户反映,电脑开机提示“没有找到iertutil.dll,因为这个应用程序未被启动”,导致电脑都不能正常使用了,用户并不知
- 有Win7用户反映说电脑关机的时候总是特别慢,电脑关机时经常卡住或者很久才关机,这是为什么?本讲为大家讲解如何修复Win7电脑关机卡在关机界
- 苹果Mac OS X默认是不显示文件后缀名的,如果我们想要直观的看到MAC系统中的后缀名的话就需要进行一些设置,本文就为大家图文介绍苹果Ma
- 最近有不少用户反应,自己的电脑关机时显示“task host window任务宿主正在执行关闭任务并且正在停止已运行的任务,导致无法正常关机
- 在 iPad 上进行文字工作,不方便的一点是无法直接调用第三方字体,虽然 iOS 13 上已经加入了安装字体功能,但是目前可以直
- RATE 函数返回年金每期的利率。适用版本Excel 2003+说明RATE 函数为财务函数中计算利息率值的函数,返回年金每期的利率。函数名
- 最近有用户反应自己的电脑打开龙之谷之后就会方式蓝屏死机的现象。龙之谷在国内也是一款比较有历史的3D网游了,下面小编就和大家说一说出现这种蓝屏
- 大家身边使用xp系统的朋友越来越少了,现在很多人都是使用的win7以上的系统了,大家都知道我们的系统用户在升级电脑的时候,就会发现我们鼠标以
- 上一篇教程我们给大家介绍了iOS14中iPhone手机充电提示音修改的方法,很多小伙伴尝试进行修改的时候发现修改iOS14充电提示音过程中的
- 我们在制作PPT时通常都会插入多张图片,比如我们可以在界面中插入与主题相关的图片,扩展资料的图片,各种装饰性的图片等等。如果有需要我们还可以
- 一、把PPT转WORD形式的方法 1.利用"大纲"视图打开PPT演示文稿,单击"大纲
- 控制面板是win8.1正式版系统自带的一项系统设置功能,通过控制面板可以对系统基本设置与管理,一般可以通过开始菜单或桌面控制面板图标进行快速
- 我们都知道Win系统可以自动播放图片,这样播放的方式解放了双手。但在Mac系统中可以这样自动播放照片吗?当然可以了,下面分享在Mac系统中将