2011年6月30日木曜日

→→→チェックデジットをつける

Private Function pass( ByRef result As String)
              Dim wk(5) , syo , amari , rp1 , rp2 , hiku , cy As Integer
              Dim ans , answer As String
              Dim stw(5)  As string
              For  rp2 = 0  To  5
                        stw( rp2 ) = result.Substring( rp2 , 1 )
                        wk( rp2 ) = Val( stw( rp2 ))
                        ans = String.concat( stw )
              Next
              syo = ( wk(0) * 7 ) + ( wk(1) * 6 ) + ( wk(2) * 5 ) + _
                      ( wk(3) * 4 ) + ( wk(4) * 3 ) + ( wk(5) * 2 )
              amari = syo Mod 11
              hiku = 11 - amari
         
              If hiku <= 9 Then
                    cy = hiku
              Else
                    cy = 0
              End If
              answer = ans & cy
              result = answer
              return result
End Function

0 件のコメント:

コメントを投稿