Opis izračunavanja kontrolnih znamenaka
Ova dokumentacija je samo radi potpunosti.
Modulo 43
Izračun kontrolne sume prema modulu 43:Kontrolni znak prema Modulu 43 koristi se npr. kod koda 39.
Prvo se referentnim brojevima označavaju svi znakovi koda. Ovi referentni brojevi dodaju se ukupnom iznosu. Ovaj iznos se dijeli sa 43. Ostatak ove divizije odgovara kontrolnoj sumi, koja se zatim zamjenjuje znakom koji odgovara referentnom broju.
Primjer izračuna:
| Cifre: | 1 5 9 A Z |
| Referentni brojevi: | 1 +5 +9 +10 +35 |
| Zbroj referentnih brojeva: | 60 |
| Izračunaj kontrolnu sumu: | 60 / 43 = 1 Ostatak 17 |
| Provjerbeni znak | "H" (Referentni broj 17) |
Referentni brojevi:
|
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 % |
Primjer koda za izračunavanje kontrolne sume prema modulu 43
Excel VBA kôd za izračun kontrolne sume prema modulu 43, npr. za HIBC kod:
' 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