how do i use array of values for dim statement

  • Thread starter Thread starter vbidiot
  • Start date Start date
V

vbidiot

How do I simplify the code below instead of putting all of the different
strings together? I want it to say if MyStr does not equal 1 or 4 or 7
or 10 then message box appears. I'm doing it the long way...I know
there's a shorter way.



Code:
--------------------
Dim AnyString, MyStr
AnyString = Range("assignment")
MyStr = Right(AnyString, 1)
If MyStr = 2 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 3 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 5 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 6 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 8 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 9 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 11 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
If MyStr = 12 Then
MsgBox ("Assignment number must end with 1,4,7,10,13")
Exit Sub
End If
 
For single digits:

if mystr like "[235689]" then



However, you can't get the single right most character and check if it
equals "10", "11", "12", or "13"

Also, if the single right most character is 3, why couldn't it end in 13.
You have to differentiate.

Think you need to rethink your logic
 
You're right...I didn't even think about I included two digits as well
as single digits. Thanks!
 
Back
Top