Validate User Input in Dialog box

  • Thread starter Thread starter Dee Sperling
  • Start date Start date
D

Dee Sperling

I'm using the following to prompt the user for the starting 5 digit code in a
list.

StartingNum = Application.InputBox("Enter the 5 digit number", "Enter
Starting Number (5 digits only)")

Once I get the value, I put it in the approprate cell, increment it by one,
and keep cascading to the cells below, based on a value in another cell on
the same row, different column.

This works great, but I was wondering if there was a way to
1) Prevent the user from canceling out of the Input box.
2) Validate the input value so that if the user enters other than exactly 5
digits, it will generate an info box and force them to re-input.
3) Not error out if a letter is entered in the box. The user knows that
they are only supposed to enter digits, but if they do a typo, it goes to
Debug, and it would be better if the program would simply dicard the value
and present the input box again.

Thanks for any suggestions,
Dee
 
Hi,

You could try this

Sub GetNum()
Dim Flag As Boolean
Flag = False
Dim StartingNum As Long
Do
On Error Resume Next
StartingNum = InputBox("Enter the 5 digit number", _
"Enter Starting Number (5 digits only)")
If IsNumeric(StartingNum) And StartingNum >= 10000 Then
Flag = True
Else
MsgBox "The only valid input is a 5 digit number"
End If
Loop Until Flag = True

End Sub

Mike
 
This lets me enter 5 or more digits, but does what's needed if the entry is
non-numeric or shorter than 5 digits.

Dee
 
Back
Top