Excel VBA:ComboBox运行时错误6:input密钥值时溢出

我正在构build一个过程来获取Excel VBA中的combobox的选定值。

下面的代码工作正常,当用户用鼠标select值。 但是当他直接用键盘input一个键时,我得到错误:

Run-time error 6: Overflow 

这是代码,错误在最后一行:

 Private Sub ComboBoxCAE_Change() Dim selecionado As Integer 'On Error Resume Next selecionado = ComboBoxCAE.Value 

我尝试了其他事件列表像AfterUpdate,但没有发生(事件没有触发)。

请帮忙吗?

Run-time error 6: Overflow通常意味着该值大于整数数据types的限制(-32,768至32,767)。 尝试将selecionado声明为数据types,如下所示:

 Private Sub ComboBoxCAE_Change() Dim selecionado As Long 'On Error Resume Next selecionado = ComboBoxCAE.Value 

您的ComboBoxCAE.Value必须低于/高于整数支持的最小/最大值(例如,参见本页 ),它是-32,768至32,767。 尝试将Dim selecionado As Integer改为Dim selecionado As Long ; Long数据types的范围是-2,147,483,648到2,147,483,647。