![](/img/trans.png)
[英]How to get combobox not to accept user input in Excel-Vba and allow vba.value changes?
[英]Get user input value of Excel ComboBox VBA
我在Excel中有一個組合框,其中裝有來自數據庫的值。 有第2列綁定並鏈接到單元格的2列。
我希望用戶能夠輸入自己的價值。
如果用戶從列表中選擇一項,則一切正常。 我在鏈接的單元格中獲得了價值。
但是,如果用戶輸入自己的數據,我將在鏈接的單元格中獲得#N / A值。
有什么方法可以檢索用戶輸入的值?
提前致謝
奇怪的是文字或值。 更新后,您將必須訪問它們。 但是您可以觀察輸入的內容並以這種方式進行跟蹤。
聲明一個全局變量以保存輸入的內容。
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的區別
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.