如何使用箭头键在ActiveX组合框的项目之间切换

时间:2019-01-22 17:13:12

标签: excel vba combobox activex

如何使用箭头键在ActiveX组合框的项目之间切换?我想实现鼠标悬停在项目上时产生的这种行为。这样,当我们按下向下箭头或向上箭头键时,蓝色突出显示就会移动。

enter image description here

我知道应该通过CoboboxName_KeyDown事件来完成。

Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    Select Case KeyCode
        Case 38 'up
        Case 40 'down
    End Select
End Sub

1 个答案:

答案 0 :(得分:0)

操纵TempCombo.ListIndex是答案。 up arrow键的示例:

Case 38  'Up
TempCombo.ListIndex = TempCombo.ListIndex - 1
Me.TempCombo.DropDown

使用它要求对列表中的第一项和最后一项进行错误处理。这是解决问题的提示: https://stackoverflow.com/a/34621918/1903793