Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I have some text boxes on a form that I want the user to be limited to only
numeric entry. I found this code in an earlier thread: Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) If Shift = 2 Then If KeyCode = 86 Then KeyCode = 0 End If End Sub Private Sub TextBox1_KeyPress(ByVal KeyAscii _ As MSForms.ReturnInteger) Select Case KeyAscii Case 46 If InStr(TextBox1.Text, ".") 0 Then _ KeyAscii = 0 Case 48 To 57 Case Else KeyAscii = 0 End Select End Sub This works great, but I need decimal entries to be allowed as well, and when the user presses the "." key an error is returned. Since I'm fairly new at this, and completely in the dark about limiting key entries, I need some help! |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi dutty,
Something like this should work: Private Sub TextBox1_KeyPress(ByVal KeyAscii _ As MSForms.ReturnInteger) If Not ((KeyAscii = Asc("0") And _ KeyAscii <= Asc("9")) Or (KeyAscii = Asc(".") _ And InStr(TextBox1.Text, ".") = 0)) Then Interaction.Beep KeyAscii = 0 End If End Sub -- Regards, Jake Marx MS MVP - Excel www.longhead.com [please keep replies in the newsgroup - email address unmonitored] dutty wrote: I have some text boxes on a form that I want the user to be limited to only numeric entry. I found this code in an earlier thread: Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) If Shift = 2 Then If KeyCode = 86 Then KeyCode = 0 End If End Sub Private Sub TextBox1_KeyPress(ByVal KeyAscii _ As MSForms.ReturnInteger) Select Case KeyAscii Case 46 If InStr(TextBox1.Text, ".") 0 Then _ KeyAscii = 0 Case 48 To 57 Case Else KeyAscii = 0 End Select End Sub This works great, but I need decimal entries to be allowed as well, and when the user presses the "." key an error is returned. Since I'm fairly new at this, and completely in the dark about limiting key entries, I need some help! |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You 'da man, Jake!!
Thanks so much! "Jake Marx" wrote: Hi dutty, Something like this should work: Private Sub TextBox1_KeyPress(ByVal KeyAscii _ As MSForms.ReturnInteger) If Not ((KeyAscii = Asc("0") And _ KeyAscii <= Asc("9")) Or (KeyAscii = Asc(".") _ And InStr(TextBox1.Text, ".") = 0)) Then Interaction.Beep KeyAscii = 0 End If End Sub -- Regards, Jake Marx MS MVP - Excel www.longhead.com [please keep replies in the newsgroup - email address unmonitored] dutty wrote: I have some text boxes on a form that I want the user to be limited to only numeric entry. I found this code in an earlier thread: Private Sub TextBox1_KeyDown(ByVal KeyCode As _ MSForms.ReturnInteger, ByVal Shift As Integer) If Shift = 2 Then If KeyCode = 86 Then KeyCode = 0 End If End Sub Private Sub TextBox1_KeyPress(ByVal KeyAscii _ As MSForms.ReturnInteger) Select Case KeyAscii Case 46 If InStr(TextBox1.Text, ".") 0 Then _ KeyAscii = 0 Case 48 To 57 Case Else KeyAscii = 0 End Select End Sub This works great, but I need decimal entries to be allowed as well, and when the user presses the "." key an error is returned. Since I'm fairly new at this, and completely in the dark about limiting key entries, I need some help! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
data validation for a single text entry | New Users to Excel | |||
Data validation text size | Excel Discussion (Misc queries) | |||
Data Validation for text only formula | Excel Discussion (Misc queries) | |||
Data Validation for text only | Excel Discussion (Misc queries) | |||
Text message using data validation. | Excel Discussion (Misc queries) |