我在工作表上有一个ActiveX组合框控件,这是_Change事件代码

Private Sub ComboBox1_Change()
  Me.ComboBox1.ListFillRange = "ItemSearch"
  Me.ComboBox1.DropDown
End Sub

当我使用键盘上/下键在列表中移动时,它会自动退出Excel。

有人知道解决这个问题的办法吗?我基本上想要一个动态的ComboBox。

最佳答案

当您更改所选选项时,您将强制更新Combobox的可能值,
这就是为什么它崩溃了。

您可以尝试在该事件中保留Me.ComboBox1.DropDown

但是.ListFillRange应该在另一个事件中:

  • 工作簿_打开
  • Workbook_SheetChange
  • Worksheet_Selection更改
  • 工作表_更改


  • 如果您尝试使用自动完成行为,则可以使用内置属性:
  • 右键单击控件,然后单击属性
  • 在打开的“属性”窗口中,找到MatchEntry属性
  • 设置为0 - fmMatchEntryFirstLetter
  • 关于vba - 尝试自动完成ActiveX ComboBox时Excel崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42162379/

    10-12 22:47