2014-09-26 58 views
1

我有一個用戶窗體上的文本框從條形碼掃描儀獲取其值。
不幸的是,有時光標會在掃描過程中跳過一半,只會輸入部分名稱。
是否有驗證完整掃描已完成的方法?Excel VBA - 如果文本框的值不在範圍內顯示錯誤消息

我可以在背景中使用所有代碼的完整列表,以便驗證是否可以使其更容易?

任何幫助,將不勝感激。

感謝 鋁

回答

1

你可以嘗試這樣的事:

Dim ScannedString As String 
Scannedstring = Textbox1.Text 

Dim StringFound as String 

'Range of all Codes 
Dim CodeRng as Range 'change this to whatever your list range is ofcourse 
set CodeRng = ThisWorkbook.Sheets("Sheet1").Range("A1:A10") 

For each code in CodeRng 
    If code = ScannedString Then 
     StringFound = code 
     Exit For 
     'The scanned code is found in the list so nothing is wrong 
    End If 
Next code 

If StringFound = "" Then 
    MsgBox "The code you scanned does not exist on the list. Please Scan again." 
End If 
+0

謝謝@Goosebumbs完美的作品:-) – 2014-09-27 06:16:22

+0

不客氣! – 2014-09-28 12:29:30

相關問題