当选择了某些组合框项目时,我已在vba代码中创建了一个列表框。 基本上,当选择组合框项目时,SQL会在数据库表上运行,并且结果记录集将被输入到一个数组中,该数组随后将填充多维列表框。
这是在显示列表框的userform模块中完成的。 我为列表框添加了点击和双击事件,但都没有工作。
以下代码用于在userform模块中创建列表框。
Dim lst As Control
Set lst = Me.Controls.Add("Forms.Listbox.1", "lstOutputList")
Rows = UBound(OutputList, 2)
With lst
.Clear
.ColumnCount = Columns
For x = 0 To Columns - 1
For y = 0 To Rows
.AddItem
If Not IsNull(OutputList(x, y)) Then
.List(y, x) = OutputList(x, y)
Else
.List(y, x) = ""
End If
Next y
Next x
For count = .ListCount To Rows + 1 Step -1
.RemoveItem count - 1
Next count
.BoundColumn = 2
.MultiSelect = fmMultiSelectSingle
.Left = 270
.Top = 100
.Width = Columns * 70
If Rows > 50 Then
.Height = 300
Else
.Height = Rows * 13
End If
End With
列表创建并在表单上显示得非常好,它只是不会触发的事件。 我已经尝试了lst_click()和lstOutputList_Click()事件以及等效的双击事件,没有任何效果。