Popis výpočtu kontrolních číslic

Tato dokumentace slouží pouze pro úplnost.
Modulo 43
Výpočet kontrolního součtu podle Modulo 43:Kontrolní číslice podle Modulo 43 se používá např. v kódu 39.
Nejprve jsou všem znakům kódu přiřazena referenční čísla. Tyto referenční čísla se sčítají do celkové částky. Tato částka se dělí 43. Zbytek tohoto oddílu odpovídá kontrolnímu součtu, který je poté nahrazen znakem odpovídajícím referenčnímu číslu.
Příklad výpočtu:
Číslice: | 1 5 9 A Z |
Referenční čísla: | 1 +5 +9 +10 +35 |
Součet referenčních čísel: | 60 |
Vypočítat kontrolní součet: | 60 / 43 = 1 Zbytek 17 |
Kontrola číslice | "H" (Referenční číslo 17) |
Referenční čísla:
00 0 01 1 02 2 03 3 04 4 05 5 06 6 07 7 08 8 09 9 10 A |
11 B 12 C 13 D 14 E 15 F 16 G 17 H 18 I 19 J 20 K 21 L |
22 M 23 N 24 O 25 P 26 Q 27 R 28 S 29 T 30 U 31 V 32 W |
33 X 34 Y 35 Z 36 - 37 . 38 Space 39 $ 40 / 41 + 42 % |
Příklad kódu pro výpočet kontrolního součtu podle Modulo 43
Kód Excel VBA pro výpočet kontrolního součtu podle Modulo 43, např. pro kód HIBC:' calc modulo 43 ‘ returns the input string plus the check character ' demo for www.activebarcode.com Public Function MOD43CheckChar(sValue As String) As String Const charSet As String = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%" Dim i As Integer Dim T As Long For i = 1 To Len(Trim(UCase(sValue))) T = InStr(charSet, Mid(sValue, i, 1)) - 1 + T Next i MOD43CheckChar = sValue & Mid$(charSet, (T Mod 43 + 1), 1) End Function