Creating a check digit
Sub AAA()
sStr = "0123456789BCDFGHJKLMNPQRSTVWXYZ"
ReDim arr(0 To Len(sStr) - 1)
For i = 1 To Len(sStr)
arr(i - 1) = Mid(sStr, i, 1)
Next
sStr1 = "012Q"
For i = 1 To Len(sStr1)
res = Application.Match(Mid(sStr1, i, 1), _
arr, 0)
If Not IsError(res) Then
lSum = lSum + res - 1
Else
MsgBox "Bad code"
Exit Sub
End If
Next
res = lSum Mod 31
MsgBox arr(res) & " " & lSum
End Sub
lSum is actually 25, but that gives the 26th element of the array ("T")
since it is zero based.
--
Regards,
Tom Ogilvy
"Patrick" wrote in message
...
Hey guys, I need you help, creating a check digit.
I have a number: 012Q
Base sequence:
0123456789BCDFGHJKLMNPQRSTVWXYZ
I need to return the positions of each char:
0 1 2 22
Then something like: =MOD('0'+'1'+'2'+'22',31)+1
That will result in: 26
The end value I need returned is T as T is at position 26
Your help is much appreciated.
|