我正在将2列表加载到2列组合框中,第2列是绑定列。我希望打开表单并选择一个组合框项目。我在Macro1上取得了成功,但在Macro2中,行.cmb1.Value = 4
引发了错误。我不确定为什么会这样,有人可以给我一个解释吗?
Sub Macro1()
Dim f As myFrm
Set f = New myFrm
With f
.cmb1.RowSource = [myLst].Address
.cmb1.Value = 4 'displays Wed in combo
End With
f.Show
End Sub
Sub Macro2()
Dim f As myFrm, v
Set f = New myFrm
With f
.cmb1.List = [myLst].Value
.cmb1.Value = 4 'Error
End With
f.Show
End Sub
答案 0 :(得分:1)
好问题。以下是Excel VBA 2010帮助的相关部分:
对于ComboBox,更改Value的内容不会更改 BoundColumn的值。
不是你需要它,但这里有另一种选择:
With f.cmb1
.List = [myLst].Value
For i = 0 To .ListCount - 1
If .List(i, 1) = 4 Then
.ListIndex = i
Exit For
End If
Next i
End With