2.8k Aufrufe
Gefragt in Tabellenkalkulation von
In einer Tabelle (Spalte) hab ich einen 8 Stelligen-EAN Code und je nach Artikel auch einen 13 Stelligen EAN Code eingetragen dieser soll mit einer Formel oder Matrik kontroliert werden ob die Zahl Richig oder Falsch ist . Kann mir da einer eine Matrik schreiben ??? für die 13 Stellige kontrolle hab ich eine Matrik im Netz gefunden aber für den 8 Stelligen find ich keinen. Dake schon mal im voraus.

8 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Dutchi,

was ist Matrik? Das kenne ich in Excel nicht. Meinst Du Matrix?

Wie sieht der EAN-Code aus? Ein Beispiel bitte für 8 und für 13 Stellen.

Wie sieht die Formel aus, die Du gefunden hast?

Was soll wann wo verglichen werden?

Du musst schon etas genauere Angaben machen, wie Deine Datei aussieht und was geschehen soll. Deine jetzigen Angaben reichen im Moment für eine Hilfe nicht aus.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von kjg17 Profi (34.4k Punkte)
Hallo,

für Excel gibt es hier im SN bereits eine Lösung, sieh sie dir mal an --> KLICK

Gruß
Kalle
0 Punkte
Beantwortet von
Matrix ist natürlich gemeint.
die EAN code sind aus meiner aktuellen Liste z.B
13 stelliger 87171 9100 4527---- ist richtig
8 stelliger 2025 9716 ---- ist richtig

{=WENN(LÄNGE(BO1460)=8;"";WENN(LÄNGE(BO1460)=13;WENN(10-REST(SUMME(TEIL(BO1460;ZEILE($1:$6)*2;1)*3)+SUMME(TEIL(BO1460;ZEILE($1:$6)*2-1;1)*1);10)=RECHTS(BO1460;1)*1;"OK";"Falsch");"!!! "))}

Ich hab die Formel so eingerichtet das wenn die Zahl 8 Stellen hat er voraussetzt das sie richtig ist er schreibt dann "" nichts rein, dies möchte ich natürlich in Zukunft ändern um Falsche 8er EAN auszuschließen.

Hoffe das ich keine Info vergessen habe. Danke
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Dutchi,

mit folgender Formel könntest Du gleich zwei Fliegen mit einem Schlag erledigen.
Sie prüft die Zahl und wenn deren Prüfziffer falsch ist, wird diese automatisch durch
die richtige ersetzt.


Formel in B1

=WENN(LÄNGE(A1)=13;--(LINKS(A1;LÄNGE(A1)-1)&REST(10-
REST(SUMMENPRODUKT((--
TEIL(A1;ZEILE($1:$12);1))*{1;3;1;3;1;3;1;3;1;3;1;3});10);10));WENN(LÄNGE(A1)=8;--
(LINKS(A1;LÄNGE(A1)-1)&REST(10-REST(SUMMENPRODUKT((--
TEIL(A1;ZEILE($1:$7);1))*{3;1;3;1;3;1;3});10);10));""))


Die 8-u. 13-stelligen Zahlen stehen ab A1 abwärts

Gruß
Rainer
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo noch mal,

traurigerweise ist die Forensoftware nicht mal in der Lage, eine Formel so wieder zu geben
wie es sein müsste.

Die gesamte Formel gehört ohne Leerzeichen und Zeilenvorschübe in eine Zeile.
0 Punkte
Beantwortet von
Danke für so schnelle Antwort,
Hab die Formel in meiner Tab. so eingearbeitet (die kleinen Übertragungsfehler ausgebessert). Gedanke war richtig aber ich ich kann das Ergebnis mit dem EAN den ich vorgebe nicht abgleichen lasssen, auch wenn beide Zahlen gleich sind, sagt er mir in der Wenn.... Gleichung, das die Zahlen nicht gleich sind !!!

ich müsste evt. eine Erweiterung meiner Matrix haben

{=WENN(LÄNGE(BO1460)=8; XXX ;WENN(LÄNGE(BO1460)=13;WENN(10-REST(SUMME(TEIL(BO1460;ZEILE($1:$6)*2;1)*3)+SUMME(TEIL(BO1460;ZEILE($1:$6)*2-1;1)*1);10)=RECHTS(BO1460;1)*1;"OK";"Falsch");"!!! "))}


Ich stell mir vieleicht vor wo XXX steht eine Formel einzusetzten die die Richtigkeit der 8 stelligen kontroliert.

Ist das auch möglich ???

(Die Matrix die Ich habe hab ich auch irgendwo hier in einem Forum gefunden. Ich bin kein Experte in der hinsicht. somit kann ich sie auch nicht ohne weiteres umschreiben. )
Danke
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo,

dann probier's mal so

=WENN(LÄNGE(BO1460)=13;WENN((LINKS(BO1460;LÄNGE(BO1460)-1)&REST(10-
REST(SUMMENPRODUKT((--
TEIL($BO1460;ZEILE($1:$12);1))*{1;3;1;3;1;3;1;3;1;3;1;3});10);10))*1=--
BO1460;"richtig";"falsch");WENN(LÄNGE(BO1460)=8;WENN((LINKS(BO1460;LÄNGE(BO146
0)-1)&REST(10-REST(SUMMENPRODUKT((--
TEIL($BO1460;ZEILE($1:$7);1))*{3;1;3;1;3;1;3});10);10))*1=--BO1460;"richtig";"falsch")))

Gruß
Rainer
0 Punkte
Beantwortet von
Super, hat funktioniert, EAN wird jetzt direkt bei eingabe kontroliert .

danke . wieder einen Schritt weiter ,
Danke nochmal.

Gruß Dutchi
...