CHECKING CHARACTER FOR INTEGER OR STRING
SCENARIO: A controlNo for inventory is formatted like:
1. For Multi Ticket = M05-00001
2. For Single Ticket = S05-00001
In order for the user not to enter a different format each character should be validated if they qualify as integer or String.
Here is the procedure in the AfterUpdate of the TxtControlNo Unbound Textbox:
The following procedure cycles through the series of characters in a textbox
'***Start of character Check for ControlNo String
’***Programmer: Noel Jerome Q. Noel
‘***Contact:
Dim X As Integer, i As Integer, intClength As Integer
Dim intSuffix As Long, NumCheck As Variant, ControlCheck As Variant
Dim RControlNo As String, StringConvert As String, StringCheck As String
intClength = Len(Me.TxtControlNumber)
X = 0
For i = 1 To intClength
RControlNo = Right(Me.TxtControlNumber.Value, intClength - X)
ControlCheck = Left(RControlNo, 1)
NumCheck = Nz(Val(ControlCheck), 0)
StringConvert = Str(NumCheck)
StringCheck = Right(StringConvert, Len(StringConvert) - 1)
If ControlCheck <> StringCheck Then
VarCheckType = "StringVar"
Else
VarCheckType = "IntegerVar"
End If
Select Case i
Case 1 'First Character should be string
If VarCheckType <> "StringVar" Then
prompt = MsgBox("You have entered a number instead of text on Character 1 of your ControlNo.", vbOKOnly, "Warning!!!")
Me.TxtControlNumber.Value = Null
Exit Sub
End If
Case 4 '4th Character should be a dash "-" string
If ControlCheck <> "-" Then
prompt = MsgBox("Character 4 of your ControlNo should be a dash '-' string. Change your ControlNo.", vbOKOnly, "Warning!!!")
Me.TxtControlNumber.Value = Null
Exit Sub
End If
Case Else 'Other Characters should be integer
If VarCheckType <> "IntegerVar" Then
prompt = MsgBox("You have entered a text instead of number on Character " & i & " of your ControlNo.", vbOKOnly, "Warning!!!")
Me.TxtControlNumber.Value = Null
Exit Sub
End If
End Select
X = X + 1
Next i
No comments:
Post a Comment