![]() |
Creating a check digit
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. |
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. |
All times are GMT +1. The time now is 05:49 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com