问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何建立excel多级下拉菜单

发布网友 发布时间:2022-04-20 17:55

我来回答

1个回答

热心网友 时间:2023-11-06 19:41

  ExcelVBA字典实现窗体二级下拉菜单:  问题提出:  选择确定ComboBox1中的数值后,ComboBox2的下拉列表自动引用ComboBox1中数值对应的列的内容。如何能做到,现在想在加一重判断:就是判断ComboBox2中的数值,如果是原来ComboBox1对应列中已有的值,就直接向下进行,如果原来ComboBox1对应列中没有该值,自动添加到该列最下一个非空行之后再向下执行。  字典的引用:  窗体代码如下:Public Arr, Dic As New Dictionary '声明为公共变量,引用“Microsoft Scripting Runtime”Private Sub UserForm_Initialize() '窗体初始化事件 Dim Brr Arr = Sheet1.Range("A1").CurrentRegion.Value 'A1单元格已用区域 For i = 1 To UBound(Arr, 2) '循环标题,并添加到字典 If Not Dic.Exists(Arr(1, i)) Then '字典中不存在关键字 Dic.Add Arr(1, i), Dic.Count + 1 '添加关键字,Item为索引 End If Next Brr = Dic.Keys Me.ComboBox1.Clear '清除列表框1条目 For i = 0 To UBound(Brr) - 1 '列表框1添加条目 Me.ComboBox1.AddItem Brr(i) NextEnd SubPrivate Sub ComboBox1_DropButtonClick() '列表框1下拉事件 Dim Brr If Me.ComboBox1.Text = "" Then Exit Sub '如果列表框1为空,就退出过程 Me.ComboBox2.Clear '清空列表框2条目 If Dic.Exists(Me.ComboBox1.Text) Then '如果列表框的关键字,在字典中有记录 Brr = Application.WorksheetFunction.Index(Arr, 0, Dic(Me.ComboBox1.Text)) '用Index函数取出整列数据 For i = 2 To UBound(Brr, 1) '列表框2添加条目 Me.ComboBox2.AddItem Brr(i, 1) '列表框2添加条目 Next End IfEnd SubPrivate Sub CommandButton1_Click() '按钮1单击事件 If Me.ComboBox1.Text = "" Or Me.ComboBox2.Text = "" Then Exit Sub '如果列表框1,2为空,就退出过程 Dim Brr, Crr Brr = Application.WorksheetFunction.Index(Arr, 0, Dic(Me.ComboBox1.Text)) '用Index函数取出整列数据 Crr = VBA.Filter(Application.Transpose(Brr), Me.ComboBox2.Text, True) '取出匹配列表框2的值 If UBound(Crr) = -1 Then '如果有列表框2的值,数组不会为-1 ,'如果列表框2中没有此关键字,往原数据添加此关键字 Sheet1.Cells(Rows.Count, Dic(Me.ComboBox1.Text)).End(xlUp).Offset(1).Value = Me.ComboBox2.Text End If Sheet1.Cells(Rows.Count, 10).End(xlUp).Offset(1).Value = Me.ComboBox2.Text '+ Me.ComboBox1.Text '把数据写入单元格 Me.ComboBox1.Text = "": Me.ComboBox2.Text = "" '列表框1,2显示为空白 Me.ComboBox1.Clear: Me.ComboBox2.Clear '清空列表框1,2的条目 Call UserForm_Initialize '初始化窗体,为下一次录入数据准备End Sub  效果图:
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
研究生入学体检不能过 红茶的功效与作用有哪些为什么好多人爱喝红茶 萧山九中是什么样的学校 睡莲子是放水里还是泥里? 萧山八中28号报到那天晚上是不是住在学校了 皮肤瘙痒,主要是下半身没有什么特殊症状。注解:我用过... 女孩不能吃海鲜和烤的东西是为什么 为什么大人总让我少吃海鲜之类的食物 女孩子不宜多吃海鲜,? 请问欧码xl的男式裤子胸围和腰围和臀围分别是多少啊?谢谢 excel如何设计二级下拉菜单? 如何使用VBA建立自己的下拉菜单 VBA 和数据验证,二级下拉列表关联,选择一个值后... excel vba下拉菜单怎么做 excel表VBA中用代码如何建立多级combobox下拉菜单 ExcelVBA实现窗体二级下拉菜单 Excel VBA 多级下拉菜单 怎样用VBA做二级下拉菜单? excel如何用VBA在窗体中制作多级下拉菜单? 怎么清理缓存手机 怎么辨别tiffany戒指的真伪 蒂凡尼蓝的色号是多少? 蒂芙尼蓝的配色法则是什么? 湖蓝色和蒂芙尼蓝是一个颜色吗? 为什么“蒂芙尼蓝”是世界上最昂贵的蓝 tiffany蓝的潘通色卡是几号? tiffany蓝和薄荷绿是不是一种颜色? Tiffany的颜色是蓝还是绿? 蒂芙尼蓝是什么颜色 是蓝色还是绿色 为什么有一种蓝色称为蒂芙尼蓝 VBA实现下拉菜单自动变换内容 WPS/EXCEL表格制作多级下拉菜单,如何自动跳转? 问个excel制作的二级下拉菜单问题 Excel VBA如何实现联动下拉菜单功能 EXCEL 二级下拉菜单 数据隐藏或屏蔽? excel二级下拉菜单,带符号\下划线引用,或者可以做... 在excel中做一个二级自动变动的下拉菜单 EXCEL2013利用VBA代码按条件引用下拉菜单 excel中多级下拉菜单怎么制作??? 求VBA程式,单元格下拉列表。 为什么手碰到任何东西都有静电作用? 为什么手碰到任何东西都有静电作用 我最近摸什么都有静电,怎么办啊 都快给电死了 手碰什么都带电是什么原因? 我每次用手摸东西老是有静电,特别容易静电,为什么? 冬天到了,静电很多,手碰到很多东西都有静电,该... 手碰门总有静电怎么办 为什么最近手一碰到东西总有触电的感觉,这是什么... 为什么手碰到东西会产生静电 不知道怎么了,手上总是有静电 怎么消除