我有一个只有文本列的表。此外,我有一个带有组合框的表格。现在我想让组合框重新调整焦点。所以我在vba中添加了一个方法:
Private Sub combobox1_GotFocus()
With combobox1
.RowSource = "SELECT text " + _
"FROM tblExample " + _
" ORDER BY text"
.Requery
End With
End Sub
当我现在点击combobox1时,下拉列表无法打开。只有当我第二次点击它时,它才会打开。这里有什么问题?如果我将两个。-lines放在评论中,我可以单击组合框一次,并显示一个空列表。
注意:我简化了问题。我有另一个公式,我也这样做,它工作正常。我希望有人知道如何解决这个问题。
答案 0 :(得分:0)
当您重新查询组合框时,它会暂时失去焦点。当您再次单击它时,它已经具有焦点,因此OnFocus
事件不会触发。您可能希望在用户单击它之前重新查询组合框。
答案 1 :(得分:0)
您的OnFocus动作很好,但您也可以添加类似的内容。
Private Sub combobox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.combobox1.SetFocus
Me.combobox1.Dropdown
End Sub