我根据之前的ComboBoxes
选项填充了一系列ComboBox
。例如,根据ComboBox3
中选择的值填充ComboBox2
。填充ComboBox3
的“触发器”是DropButtonClick
操作。当ComboBox2中没有值时,我弹出一个消息框。这是成功的 - 下面的代码。
If Me.ComboBox2.ListIndex = -1 Then
MsgBox "Please select all preceding comboboxes"
ComboBox3.Value = ""
Exit Sub
Else
sh.Range("B2") = Me.ComboBox2.Value
End If
我的问题是Message Box
出现后ComboBox2
中没有值ComboBox3
ComboBox3 DropButtonClick Event
仍会显示下拉值。有没有办法在ComboBox2
中没有值时撤消ComboBox3
,以便<div class=\"col - md - 4 queryResponseBodyKey\">.*</div>
永远不会下降?
答案 0 :(得分:1)
您可以通过模拟“ESC”键立即关闭组合框的下拉窗口:
MsgBox "Please select all preceding comboboxes"
ComboBox3.Value = ""
' close immediately the combo's dropdown window
SendKeys "{ESC}{ESC}"
答案 1 :(得分:0)
这适合你吗?
If Me.ComboBox2.Value = "" Then
ComboBox2.SetFocus
Else
sh.Range("B2") = Me.ComboBox2.Value
End If
当你想点击combobox3的下拉按钮时,它会自动返回到combobox2。