Hi Bob
Or maybe
Case 45: If TextBox1.SelStart < 0 Then keyascii = 0
--
Regards Ron de Bruin
http://www.rondebruin.nl
"Bob Phillips" wrote in message ...
Only once, and at start Ron
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Static fHyphen As Boolean
Select Case KeyAscii
Case 45
If fHyphen Or Len(TextBox1.Text) 1 Then
KeyAscii = 0
End If
Case 48 To 57 'Numbers
Case Else 'Discard anything else
KeyAscii = 0
End Select
End Sub
Regards
Bob
"Ron de Bruin" wrote in message
...
Hi Paul
Use this (45 = -)
Private Sub TextBox1_KeyPress(ByVal keyascii As MSForms.ReturnInteger)
Select Case keyascii
Case 45
Case 48 To 57 'Numbers
Case Else 'Discard anything else
keyascii = 0
End Select
End Sub
--
Regards Ron de Bruin
http://www.rondebruin.nl
"Paul" wrote in message
...
I have a text box in a form I would like the user to enter numbers only
in.
On this forum, some code was posted:
Private Sub TextBox1_Key Press
If KeyAscii <48 or Key Ascii 57 Then
KeyAscii=0
End If
This works great EXCEPT it will not allow input of a negative number,
which
I need. How can I modify this code to allow a negative number to be
input?
Thanks!
--
Paul