我在用戶窗體上有一個文本框,我試圖將用戶輸入限制爲只允許整數值。我能夠做到這一點,但這種行爲有點奇怪。首先,這裏是我的代碼:在用戶窗體文本框上將用戶輸入限制爲整數
Private Sub txtAnswer_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If (KeyAscii >= 48) And (KeyAscii <= 57) Then
Me.txtAnswer.SetFocus
Else
KeyAscii = 0
Me.txtAnswer.SetFocus
End If
End Sub
問題是用戶輸入一個值後,焦點似乎離開了文本框。此外,如果用戶確實輸入了整數值,則從文本框中刪除該值(即輸入被「吃掉」)。 SetFocus線是我試圖使控件正常工作,但它們似乎沒有效果。
我想要做的就是確保用戶在文本框中不輸入「r」(或任何其他非整數值)。任何整數值> = 0是完全可以接受的(包括多個數字值,如10或1000000)。
任何人都可以看到爲什麼我的方法不工作?我嘗試了幾種不同的方法,並且搜索了很多,但我找不到有效的方法。
謝謝
這是完美的。非常感謝! – Alex
@Randy:謝謝Randy :)。我只是增加了一個額外的功能。 –
感謝您的解決方案。我嘗試過這個。它的工作原理除了我仍然可以添加點(十進制)符號 –