Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
772to776
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
772to776
772to776
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Prüfziffer mit Modulo 11 errechnen
20.06.2006 13:24:15
Bernd
Ich habe bei meinem ersten Eintrag im Forum einen wichtigen Hinweis vergessen:
Das Benutzerformular wird mit >Strgs Ich möchte in ein einem Benutzerformular eine 7-stellige Zahl
eingeben und diese mit einer Prüfziffer (Modulo11) in der 8. Stelle
automatisch ergänzen.
Beispieldatei: www.herber.de/bbs/user/34486.xls
Als Anfänger in Sachen VB bin ich für jeden Hinweis sehr dankbar.
Gruß Bernd

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 14:08:49
u_
Hallo,
darunter kann ich mir nichts vorstellen. Erläutere doch mal Modulo11.
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 14:26:08
Harald
Hi u_
Modulo:
Quadratischer Rest
aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Der quadratische Rest ist der Rest der Division einer Quadratzahl durch eine natürliche Zahl. Eine ganze Zahl r heißt quadratischer Rest modulo m, falls es eine Zahl x mit
Userbild
gibt. Ist dies nicht der Fall, spricht man auch von einem quadratischen Nichtrest oder einem nicht-quadratischen Rest.
Ich lass die Frage offen ;-))
Gruss Harald
Anzeige
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 15:29:46
Bernd
Berechnung einer Prüfsumme nach Modulo 11:
Zunächst werden alle Ziffern von rechts nach links einzeln mit einem Multiplikator multipliziert.
Der Multiplikator entspricht der Position der Ziffer+1, also:
1. Stelle * 2, 2. Stelle * 3 .... 6. Stelle * 7
Alle daraus resultierenden Produkte werden addiert. Das Ergebnis wird dann durch 11 dividiert. Der daraus resultierende Rest (Modulo 11) wird von 11 abgezogen und ergibt dann die Prüfziffer.
Beispiel:
Art.-Nr.4253016
6 * 2 = 12
12 + 1 * 3 = 15
15 + 0 * 4 = 15
15 + 3 * 5 = 30
30 + 5 * 6 = 60
60 + 2 * 7 = 74
74 + 4 * 2 = 82
82 : 11 = 7
82 – (7 * 11 ) = 5
11 – 5 = 6 Prüfziffer wäre also 6 Vollständige Art.-Nr.= 42530166
Anzeige
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 16:14:05
UweD
Hallo
du schreibst..
... Der daraus resultierende Rest (Modulo 11) wird von 11 abgezogen und ergibt dann die Prüfziffer...

Das kenn ich nur vom Modulo10. Bei Modulo11 ist der Rest bereits die Prüfziffer.
Kann ich auch nur so in der Literatur finden.
Gruß UweD
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 14:47:56
UweD
Hallo
hier : wie der Modulo 11 gebildet wird.
http://www.activebarcode.de/codes/checkdigit/modulo11.html
hier ein Makro dazu. (muß noch angepasst und in deine Userform eingebaut werden)

Sub modulo11()
Dim Test$, i As Byte, Quer%, Prüf As Byte
Test = "64010093"
For i = 1 To Len(Test)
Quer = Quer + Mid(Test, i, 1) * (i + 1)
Next
Prüf = Quer Mod 11
If Prüf = 10 Then
MsgBox "Fehlerhafter Code"
Prüf = ""
Test = "ungültig"
End If
MsgBox "Prüfziffer: " & Prüf & vbLf & vbLf & _
"Code: " & Test & " " & Prüf
End Sub

Gruß UweD
(Rückmeldung wäre schön)
Anzeige
AW: Berichtigung
20.06.2006 14:55:00
UweD
Hallo
Den Fall Prüf = 10 hatte ich nicht getestet...
Ändere die Zeile so ab..
Dim Test$, i As Byte, Quer%, Prüf$
Gruß UweD
(Rückmeldung wäre schön)
AW: Berichtigung
20.06.2006 16:20:59
Bernd
Hallo Uwe,
vielen Dank für die Unterstützung. Ich habe die Prozedur implementiert und getestet.
Ich erhalte als Ergebnis die Prüfziffer 2.
Bei der 7-steilligen Nr. 6401009 müsste die Prüfziffer eigentlich 3 lauten.
Es gibt augenscheinlich unterschiedliche Verfahren in der Berechnung.
Nach meinen Informationen sollte die Berechnung Prüfziffer nach Modulo 11 wie folgt errechnet werden:
Zunächst werden alle Ziffern von rechts nach links einzeln mit einem Multiplikator multipliziert.Der Multiplikator entspricht der Position der Ziffer+1, also:
1. Stelle * 2, 2. Stelle * 3 .... 6. Stelle * 7
Alle daraus resultierenden Produkte werden addiert. Das Ergebnis wird dann durch 11 dividiert. Der daraus resultierende Rest (Modulo 11) wird von 11 abgezogen und ergibt dann die Prüfziffer.
Beispiel:
Art.-Nr.4253016
6 *2 = 12
12 + 1 * 3 = 15
15 + 0 * 4 = 15
15 + 3 * 5 = 30
30 + 5 * 6 = 60
60 + 2 * 7 = 74
74 + 4 * 2 = 82
82 : 11 = 7
82 – (7 * 11 ) = 5
11 – 5 = 6 Prüfziffer wäre also 6 Vollständige Art.-Nr.= 42530166
wenn 11-0=11 so ist die rüfziffer = 1 bzw. 11-1=10 so ist die rüfziffer = 0
Vielen Dank
Bernd
Anzeige
AW: Prüfziffer mit Modulo 11 errechnen
20.06.2006 20:25:52
Bernd
Hallo Uwe,
aufgrund meiner geringen VB-Kenntnisse hätte gern gewust, wie die Prozedur aussehen müsste, wenn die Berechnung in der For - Schleife von rechts nach links erfolgen würde ?
For i = 1 To Len(Test)
Quer = Quer + Right(Test, i, 1) * (i + 1)
ist syntaktisch falsch
Danke im Voraus
Bernd
AW: Prüfziffer mit Modulo 11 errechnen
21.06.2006 10:40:03
UweD
Hallo Bernd
so aus dem Kopf heraus...
For i = Len(Test) To 1 Step-1
Quer = Quer + Mid(Test, i, 1) * (i + 1)
Next
Gruß UweD
(Rückmeldung wäre schön)
AW: Prüfziffer mit Modulo 11 errechnen
23.06.2006 10:21:11
BerndF
Hallo Uwe,
Dein Vorschlag funktioniert; leider erfolgt die Berechnung aber auch von links nach rechts.
Ein Test unter Verwendung des Barcode-Scanner brachte folgendes Ergebnis:
eingescannter Barcode: 6401015101890
Nr. in der Sortimentsliste: 64010158
Nach welchen Verfahren die die Prüfziffer 8 ermittelt wird ist mir ein Rätsel.
Mein Problem hat sich dadurch erstmal erledigt.
Nochmals vielen Dank für die Unterstützung.
Gruß Bernd
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge