以下是一个示例代码,用于创建一个以百计自动生成的ActiveX组合框:
Private Sub Form_Load()
Dim i As Integer
For i = 1 To 100
' 创建ActiveX组合框
Dim cbo As MSForms.ComboBox
Set cbo = Me.Controls.Add("Forms.ComboBox.1")
' 设置组合框的位置和大小
cbo.Left = 10
cbo.Top = i * 25
cbo.Width = 100
cbo.Height = 20
' 设置组合框的名称和选项
cbo.Name = "ComboBox" & i
cbo.AddItem "选项1"
cbo.AddItem "选项2"
cbo.AddItem "选项3"
' 添加事件处理程序
AddHandler cbo, "Change", AddressOf ComboBox_Change
Next i
End Sub
Private Sub ComboBox_Change()
' 处理组合框的Change事件
Dim cbo As MSForms.ComboBox
Set cbo = Me.Controls(ActiveControl.Name)
' 在控制台中输出所选项的值
Debug.Print cbo.Value
End Sub
这个示例在窗体的加载事件中使用了一个循环来创建100个ActiveX组合框。每个组合框都被赋予了唯一的名称,并且添加了几个选项。还为每个组合框添加了Change事件的处理程序。
在Change事件处理程序中,通过Me.Controls(ActiveControl.Name)
获取所选组合框的引用,然后可以使用Value
属性获取所选项的值。这里的示例只是将所选项的值输出到控制台,您可以根据需要进行相应的处理。