Beschrijving van het berekenen van controlecijfers

Deze documentatie is alleen bedoeld voor de volledigheid.
Modulo 43
Berekening van een controlesom volgens Modulo 43:Een controlegetal volgens Modulo 43 wordt bijvoorbeeld gebruikt door de Code 39.
Eerst worden referentienummers toegekend aan alle tekens van de code. Deze referentienummers worden opgeteld tot een totaal. Deze som wordt gedeeld door 43. De rest van deze deling komt overeen met de controlesom, die vervolgens wordt vervangen door het teken dat overeenkomt met het referentienummer.
Een rekenvoorbeeld:
Cijfers: | 1 5 9 A Z |
Referentienummers: | 1 +5 +9 +10 +35 |
Som van referentienummers: | 60 |
Controlesom berekenen: | 60 / 43 = 1 Rest 17 |
Cijfer controleren | "H" (Referentienummer 17) |
Referentienummers:
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 % |
Codevoorbeeld voor het berekenen van de controlesom volgens Modulo 43
Excel VBA-code voor het berekenen van de controlesom volgens Modulo 43, bijvoorbeeld voor de HIBC-code:' 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