Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Abgleich zweiter Tabellen
#1
Hallo zusammen,

ich habe zwei Dokumente die wie folgt aufgebaut sind:

Tabelle1 (Beispiel)

Artikelnummer    Attribute    Bestand

8290                    4                  12
100236                5                  96


Tabelle2


Artikelnummer     Bestand

12345-8290-4      3
12345-8290-5      4

Ich möchte nun den Bestand von Tabelle 1 in Tabelle 2 übernehmen, der Bestand in Tabelle 2 soll überschrieben werden.
Das Matching muss anhand der Artikelnummer und der Zelle Attribute erfolgen, d.h. in Tabelle 2 findet sich die Artikelnummer z.b. 8290 mit dem jeweiligen Atribut z.B. in dieser Form wieder 8290-4.
Der Bestand von 12 soll also in Tabelle 2 in die Zelle Bestand für Artikelnummer 12345-8290-4 eingetragen werden.

Würde mich über eine Lösung freuen Smile

Vielen Dank
Markus
Antworten Top
#2
Hallo,

nur zwei Beispiele ist etwas wenig um das Ganze zu testen, aber ich könnte mir folgende Vorgehensweise vorstellen:

In Tabelle1 wird eine Hilfsspalte z.B. Spalte D verwendet und dort einfach mit der Formel

=A2&"-"&B2

die Art.Nr. und das Attribut dem Wert in Tabelle2 angepasst.

In Tabelle2 könnte man dann mit einer Formel wie

=INDEX(Tabelle1!C:C;VERGLEICH(RECHTS(A2;LÄNGE(A2)-FINDEN("-";A2));Tabelle1!D:D;0))

die Werte aus Tabelle1 holen.

Der Ausdruck =RECHTS(A2;LÄNGE(A2)-FINDEN("-";A2)) dient einfach dazu den Bereich vor dem ersten Bindestrich abzuschneiden.

Bei deinen zwei Beispielswerten funktioniert das, ob das am Original funktioniert musst du ausprobieren.

Nachtrag: Wenn der Bereich vor dem ersten Bindestrich, also das '12345' immer gleich ist dann könnte man das natürlich in der Hilfsspalte ergänzen und könnte die Index/Vergleich-Formel entsprechend vereinfachen.
Gruß
Peter
Antworten Top
#3
Hallo Peter,

ich habe zwei Beispiele angeführt um zu verdeutlichen um was es mir geht.
Die betreffenden Tabellen haben jeweils ca. 50.000 Einträge.

Ich werde deine Vorschläge mal ausprobieren.

Vielen Dank
Markus
Antworten Top
#4
(24.05.2018, 13:17)börsenguru schrieb: Hallo Peter,

ich habe zwei Beispiele angeführt um zu verdeutlichen um was es mir geht.
...
Vielen Dank
Markus

Hallo Markus, mich verwirren die "beiden" Beispiele eher...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#5
Hallo Peter,

ich habe jetzt in Tabelle1 mit deiner Formel (bisschen abgewandelt) die Artikelnummer, die identisch ist mit der Nummer aus Tabelle 2.
Ein Abschnneiden vor dem ersten Bindestrich wäre somit nicht mehr notwendig, wollte deine Formel anpassen, ist mir leider nicht gelungen ;-(
Was muss denn alles entfernt werden?

In Tabelle1 habe ich nun die zusammengesetze Artikelnummer ab F2 und der Bestand in Tabelle2 befindet sich ab C2

Besten Dank
Antworten Top
#6
Hallo, kannst du evtl. (d)eine (Beispiel)Datei posten..? Möglichst mit Wunschergebnis...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top
#7
Hallo,

Peter hat es schon verstanden, es geht jetzt nur noch darum die vorgeschlagene Formal anzupassen.

=INDEX(Tabelle1!C:C;VERGLEICH(RECHTS(A2;LÄNGE(A2)-FINDEN("-";A2));Tabelle1!D:D;0))

Der Ausdruck =RECHTS(A2;LÄNGE(A2)-FINDEN("-";A2)) dient einfach dazu den Bereich vor dem ersten Bindestrich abzuschneiden.  -> ist nicht mehr notwendig und müsste aus der Formel entfernt werden.

In Tabelle1 habe ich nun die zusammengesetze Artikelnummer ab F2 und der Bestand in Tabelle2 befindet sich ab C2
Antworten Top
#8
Hallo,

ich schließe mich mal dem Wunsch von Jockel auf eine anonymisierte Beispielsdatei an zumal du die von mir gepostete Formel abgewandelt hast.
Gruß
Peter
Antworten Top
#9
Hallo Peter,

ich habe lediglich aus deiner Formel =A2&"-"&B2 folgende gemacht -> =A2&"-"&E2&"-"&D2
Aus diesem Grund ist "Der Ausdruck =RECHTS(A2;LÄNGE(A2)-FINDEN("-";A2)) dient einfach dazu den Bereich vor dem ersten Bindestrich abzuschneiden" nicht mehr erforderlich.
Der Aufbau der Artikelnummern ist jetzt in beiden Tabellen identisch, ich konnte jedoch die Formel nicht testen da ich nicht weiß welcher Bereich für den Abschnitt gelöscht werden kann, vielleiicht kannst du die Formel anpassen dann könnte ich es ausprobieren?
Antworten Top
#10
Hallo,

wenn die Artikelnummer jetzt in beiden Tabellen gleich ist und die angepasste Artikelnummer in Spalte F der Tabelle1 steht dann sieht die Formel so aus:

=INDEX(Tabelle1!C:C;VERGLEICH(A2;Tabelle1!F:F;0))
Gruß
Peter
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste