获取Excel ComboBox VBA的用户input值

我有一个Excel中的combobox,填充了来自数据库的值。 有2列与第二列绑定并链接到一个单元格。

我希望用户能够input自己的价值。

如果用户从列表中select一个项目,一切都很好。 我得到链接的单元格中的值。

但是,如果用户input他们自己的数据,我会在链接的单元格中得到一个#N / A值。

有什么方法可以检索用户input的值吗?

提前致谢

奇怪的是文字或价值。 更新后您将不得不访问它们。 但是你可以看到input的内容,并以这种方式跟踪它。

声明一个全局variables来保存input内容。

Private strComboEntry As String 

然后看看正在键入什么。

 Private Sub ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Dim strKey As String strKey = Chr(KeyAscii) strComboEntry = strComboEntry & strKey End Sub 

我们将不得不处理退格和删除。

 Private Sub ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = 8 Then strComboEntry = Left(strComboEntry, Len(strComboEntry) - 1) Exit Sub End If End Sub 

编辑:OP说这个评论得到了他的答案。
看看ComboBox2.Text与ComboBox2.Value有一个区别。 不知道它是否会返回你正在寻找,但看看。 在VBA Access中使用.text和.value之间的区别