Private Function ak(s)
Dim i, a, b, c, d, e
i = chksum(s)
If Mid$(s, 11, 1) = i Then
    ak = True
Else
    ak = False
End If
End Function
Private Function chksum(ak)
Dim c, c1
c = Val(Mid$(ak, 1, 1)) + Val(Mid$(ak, 2, 1)) * 2 + Val(Mid$(ak, 3, 1)) * 3 + Val(Mid$(ak, 4, 1)) * 4 + Val(Mid$(ak, 5, 1)) * 5 + Val(Mid$(ak, 6, 1)) * 6 + Val(Mid$(ak, 7, 1)) * 7 + Val(Mid$(ak, 8, 1)) * 8 + Val(Mid$(ak, 9, 1)) * 9 + Val(Mid$(ak, 10, 1))
c = c Mod 11
c1 = Val(Mid$(ak, 1, 1)) * 3 + Val(Mid$(ak, 2, 1)) * 4 + Val(Mid$(ak, 3, 1)) * 5 + Val(Mid$(ak, 4, 1)) * 6 + Val(Mid$(ak, 5, 1)) * 7 + Val(Mid$(ak, 6, 1)) * 8 + Val(Mid$(ak, 7, 1)) * 9 + Val(Mid$(ak, 8, 1)) * 1 + Val(Mid$(ak, 9, 1)) * 2 + Val(Mid$(ak, 10, 1)) * 3
c1 = c1 Mod 11
If c <> 10 Then
    chksum = c
ElseIf c1 <> 10 Then
    chksum = c1
Else
    chksum = 0
End If
End Function