¸ê®Æ:
«Â±æ: 0
¾y¤O:
¸gÅç:
²{ª÷: 1811 ¤¸
¦s´Ú: ¨S¶}¤á
¶U´Ú: ¨S¶U´Ú
¨Ó¦Û: «O±K¡@
¦b½u: 00 ®É 00 ¤À 00 ¬í
Á`µo¨¥¼Æ: 9 ½g
µù¥U¤é´Á: 2003/03/05
|
|
| |
¬ÛÃöªþ¥ó¡G (¦@ 40413 ¦ì¤¸²Õ)
[³oÓ©«¤l³Ì«á¥Ñphoenixcu¦b 2003/05/27 11:39am ½s¿è]
¨¥÷ÃÒ¸¹½X¡]¨Ò¤G¡^AB123456(9) ¥Nªí¼Æ¦r (a) 10, 11, 1, 2, 3, 4, 5, 6 ¤ñ«¡]¤£ÅÜ¡^ (b) 9, 8, 7, 6, 5, 4, 3, 2 (c) = (a) * (b) 90, 88, 7, 12, 15, 16, 15, 12 (d) = SUM(c) 255 ®ÕÀ˽X = 11 - (d)/11ªº¾l¼Æ11 - 255/11ªº¾l¼Æ ¡× 11 - 2 ¡× 9 µ²½×¥¿½T ¤p¤ß: ¦pªG¥u¦³¤@Ó^¤å¦r¥À, ´N·íªÅ¥Õ¥[¤@Ó^¤å¦r¥À, ªÅ¥ÕªºÈ¬O36, A¬O10, Z¬O35. ¦pªG®ÕÀ˽Xpºâ¥X¨Ó¬O10 «çš¬¿ë©O? ´N^¤å¦r¥À"A"¨Ó¥N´À! ¬Û«H³\¦h¤HÁÙ±q¨Ó¨S¨£¹L¥ÎA°µ®ÕÀ˽X§a! Public Function HKID_CheckDigit(inHKID As String) As String Dim hkid_x1 As String Dim hkid_x2 As String Dim hkid_digit1 As Integer Dim hkid_digit2 As Integer Dim hkid_digit3 As Integer Dim hkid_digit4 As Integer Dim hkid_digit5 As Integer Dim hkid_digit6 As Integer Dim hkid_check_digit As Integer Dim hkid_sum As Integer Dim hkid_mod As Integer If Mid(inHKID, 2, 1) >= "A" And Mid(inHKID, 2, 1) <= "Z" Then hkid_x1 = Mid(inHKID, 1, 1) hkid_x2 = Mid(inHKID, 2, 1) hkid_digit1 = Mid(inHKID, 3, 1) hkid_digit2 = Mid(inHKID, 4, 1) hkid_digit3 = Mid(inHKID, 5, 1) hkid_digit4 = Mid(inHKID, 6, 1) hkid_digit5 = Mid(inHKID, 7, 1) hkid_digit6 = Mid(inHKID, 8, 1) If Mid(inHKID, 9, 1) = "(" Then hkid_check_digit = Mid(inHKID, 10, 1) Else hkid_check_digit = Mid(inHKID, 9, 1) End If Else hkid_x1 = " " hkid_x2 = Mid(inHKID, 1, 1) hkid_digit1 = Mid(inHKID, 2, 1) hkid_digit2 = Mid(inHKID, 3, 1) hkid_digit3 = Mid(inHKID, 4, 1) hkid_digit4 = Mid(inHKID, 5, 1) hkid_digit5 = Mid(inHKID, 6, 1) hkid_digit6 = Mid(inHKID, 7, 1) If Mid(inHKID, 9, 1) = "(" Then hkid_check_digit = Mid(inHKID, 9, 1) Else hkid_check_digit = Mid(inHKID, 8, 1) End If End If
Select Case hkid_x1 Case "A" hkid_x1_num = 10 Case "B" hkid_x1_num = 11 Case "C" hkid_x1_num = 12 Case "D" hkid_x1_num = 13 Case "E" hkid_x1_num = 14 Case "F" hkid_x1_num = 15 Case "G" hkid_x1_num = 16 Case "H" hkid_x1_num = 17 Case "I" hkid_x1_num = 18 Case "J" hkid_x1_num = 19 Case "K" hkid_x1_num = 20 Case "L" hkid_x1_num = 21 Case "M" hkid_x1_num = 22 Case "N" hkid_x1_num = 23 Case "O" hkid_x1_num = 24 Case "P" hkid_x1_num = 25 Case "Q" hkid_x1_num = 26 Case "R" hkid_x1_num = 27 Case "S" hkid_x1_num = 28 Case "T" hkid_x1_num = 29 Case "U" hkid_x1_num = 30 Case "V" hkid_x1_num = 31 Case "W" hkid_x1_num = 32 Case "X" hkid_x1_num = 33 Case "Y" hkid_x1_num = 34 Case "Z" hkid_x1_num = 35 Case " " hkid_x1_num = 36 End Select Select Case hkid_x2 Case "A" hkid_x2_num = 10 Case "B" hkid_x2_num = 11 Case "C" hkid_x2_num = 12 Case "D" hkid_x2_num = 13 Case "E" hkid_x2_num = 14 Case "F" hkid_x2_num = 15 Case "G" hkid_x2_num = 16 Case "H" hkid_x2_num = 17 Case "I" hkid_x2_num = 18 Case "J" hkid_x2_num = 19 Case "K" hkid_x2_num = 20 Case "L" hkid_x2_num = 21 Case "M" hkid_x2_num = 22 Case "N" hkid_x2_num = 23 Case "O" hkid_x2_num = 24 Case "P" hkid_x2_num = 25 Case "Q" hkid_x2_num = 26 Case "R" hkid_x2_num = 27 Case "S" hkid_x2_num = 28 Case "T" hkid_x2_num = 29 Case "U" hkid_x2_num = 30 Case "V" hkid_x2_num = 31 Case "W" hkid_x2_num = 32 Case "X" hkid_x2_num = 33 Case "Y" hkid_x2_num = 34 Case "Z" hkid_x2_num = 35 Case " " hkid_x2_num = 36 End Select hkid_sum = hkid_x1_num * 9 + _ hkid_x2_num * 8 + _ hkid_digit1 * 7 + _ hkid_digit2 * 6 + _ hkid_digit3 * 5 + _ hkid_digit4 * 4 + _ hkid_digit5 * 3 + _ hkid_digit6 * 2 hkid_mod = hkid_sum Mod 11 HKID_CheckDigit = CStr(11 - hkid_mod) If HKID_CheckDigit = 10 Then HKID_CheckDigit = "A" If HKID_CheckDigit = 11 Then HKID_CheckDigit = "0" End Function |
|
| |