龙空技术网

Excel 动态添加复合框 ComboBox

江觅 233

前言:

当前各位老铁们对“clist数组”都比较注重,大家都需要学习一些“clist数组”的相关知识。那么小编在网上网罗了一些对于“clist数组””的相关文章,希望看官们能喜欢,大家一起来学习一下吧!

文/江觅

复合在vba编程中运用很普遍,具有一定适用性,这里就介绍一下如何动态添加复合框的方法。(附代码)

动态图片效果如下

新建一个窗体,用来显示复合框添加的位置,本例将复合框添加到顶部,单击新建按钮执行新建功能。

复合框和列表框有一些相同的功能,更加丰富一些。

这里的复合框只简单设置一下,做了下拉列表运用,大家什么更好应用欢迎留言。

可实现自动添加列表记录,此例是运用了数组进行list赋值,也可用单元格Range来给列表赋值。

添加了列表Change事件,用来显示选择效果,这也是一个基本的操作,实际应用比较常见。

新建代码

Private Sub CommandButton1_Click()''''''''''' 新建复合框 '''''''''''''''''''Dim Co1 As Object, Aobj As ObjectDim Cvalue(), Clist0(), Clist1()Cvalue = Array("A", "B") '''定义新建复合框名称Clist0 = Array("四大名著", "三国演义", "红楼梦", "西游记", "水浒传") '定义内容Clist1 = Array("四大美人", "西施", "王昭君", "貂蝉", "杨玉环")Dim u As Integeru = UBound(Cvalue)For i = 0 To u ''' 循环新建复合框Set Co1 = Me.Controls.Add("Forms.ComboBox.1", Cvalue(i))'''''''' 新建复合框代码 '''''''''''''With Co1.Top = 30.Left = i * 150 + 30.Height = 25.Width = 130.BorderStyle = 1.Font.Size = 14.Font.Name = "微软雅黑"If i = 0 Then .List = Clist0If i = 1 Then .List = Clist1.Value = .List(0)End WithSet Aobj = New ComChange ''''''' 新建复合框事件Aobj.init Co1Com.Add AobjNext iu = u + 1MsgBox "成功新建" & u & "个复合框!", vbInformation, "成功"End Sub

标签: #clist数组