Prüfziffernberechnung nach Modulo 43

Modulo 43

Dies ist eine Beschreibung der Prüfziffernberechnung nach Modulo 43.

InfoActiveBarcode berechnet die Prüfziffern bei fast allen Codes automatisch.
Diese Dokumentation dient nur der Vollständigkeit.

Berechnung einer Prüfsumme nach Modulo 43:
Eine Prüfziffer nach Modulo 43 wird z.B. von dem Code 39 verwendet.

Zunächst werden allen Zeichen des Codes Referenzzahlen zugeordnet. Diese Referenzzahlen werden zu einer Summe addiert. Diese Summe wird durch 43 diviert. Der Rest dieser Division enspricht der Prüfsumme, welche dann wieder mittels des Zeichens passend zur Refezenzzahl dargestellt wird.

Ein Berechnungsbeispiel:

Ziffern: 1 5 9 A Z
Referenznummern: 1 +5 +9 +10 +35
Summe der Referenznummern: 60
Prüfsumme berechnen: 60 / 43 = 1 Rest 17
Prüfziffer "H" (Referenznummer 17)

Referenznummern:
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 %


Codebeispiel zur Berechnung der Prüfsumme nach Modulo 43

Excel VBA Code zur Berechnung der Prüfsumme nach Modulo 43, z.B. für den 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