我有一个组合框,其中包含来自Access数据库的信息。我有一个方法,使用ADO Recordset打开记录。我有一个多列组合框,我想从表单上的填充列表中选择一个值。对于单列组合框,使用value属性填充表单上显示的值,如下所示。
frmDataEntry.txtProcessID = sourceRS.Fields("ProcessID").Value
我在填充多列组合框时遇到问题,因为Value属性不起作用。
Do Until y >= frmDataEntry.cmbProcess.listCount
If frmDataEntry.cmbProcess.List(y, 0) = sourceRS.Fields("ProcessID").Value Then
'This is where i'd like to set the value
End If
y = y + 1
Loop
在上面的代码中,如果这是一个列表框,我将使用.Selected(y) = True
属性,但这不适用于组合框。有人有什么建议吗?我已经到处搜索,但似乎无法找到一种方法来做到这一点,而不会消除组合框的填充列表。
答案 0 :(得分:1)
我不确定您要执行的操作,但如果您的问题是显示已添加的值,frmDataEntry.cmbProcess.ListIndex = y
将完全针对0 <= y < ListCount
执行此操作
答案 1 :(得分:0)
通常这就是我的工作。我将值放入一个数组然后执行此操作:
Dim MyArray() As String
'Here you want to populate MyArray
With Me.combobox1
.ColumnCount = 2
.BoundColumn = 2
.ColumnWidths = "2.5 in; 0 in"
.List = MyArray
End With