Excel - Sverweis mit mehreren Rückgabewerten in einer Zelle
Hallo zusammen,
ich habe folgende Herausforderung zu bewältigen:
Zwei Tabellen mit Artikeldaten. In der ersten sind alle Stammdaten enthalten. In der zweiten befinden sich ergänzende Daten, die ich gerne mittels Sverweis in Tabelle 1 anfügen möchte. Die Schwierigkeit besteht darin, dass in der zweiten Tabelle mehrere Einträge (Zeilen) zu jeder Artikelnummer enthalten sind, wo ich jeweils aus einer Spalte die Zellinhalte in einer Zelle in Tabelle 1 zusammenführen muss.
Bsp.:
Tabelle 1 (4 Spalten)
0001 Schuh Mann 35,95
0002 Schuh Frau 79,95
Tabelle 2 (3 Spalten)
0001 Schuh 42
0001 Schuh 43
0001 Schuh 44
0002 Schuh 38
0002 Schuh 39
Ergebnis inkl. neuer Spalte (5 Spalten)
0001 Schuh Mann 35,95 42, 43, 44
0002 Schuh Frau 79,95 38, 39
Ist dies' überhaupt mittels Formel zu bewältigen, oder müsste hier VBA her? Wenn ja, wie müsste die Formel aussehen? Bzw. wie müsste sonst ein adäquater VBA Code aussehen?
Für eines Feedback und Eure Unterstützung im Voraus vielen Dank.
3 Antworten
Ich würde das so machen:
In Tabelle 2 eine neue Spalte (wenn die linke obere Ecke der Tabelle zum Beispiel A18 ist) mit der Formel: =WENN(A18<>A17;C18;D17&","&C18)
Damit werden schon in Tabelle 2 die Schuhgrößen kumuliert.
In Tabelle 1 kannst du dann deinen gewohnten SVERWEIS
verwenden (A6 ist bei mir die linke obere Ecke): =SVERWEIS(A6;Schuhgrößen;4)
Die Formeln jeweils herunterziehen.
Wichtig ist, dass Tabelle 2 nach der Artikelnummer sortiert ist.
Mit VBA kann man alles. Man sollte nur aufpassen, nicht mit Kanonen auf Spatzen zu schießen.
Keine Ahnung was du falsch machst. Welche Information benötigst du noch von mir? Bei mir geht es.
Ich habe Microsoft Excel Starter
A B C D E
6 1 Schuh Mann 35,95 =SVERWEIS(A6;A18:D22;4)
7 2 Schuh Frau 79,95 =SVERWEIS(A7;Schuhgrößen;4)
... (es folg Tabelle Schuhgrößen als benamter Bereich)
18 1 Schuh 42 =WENN(A18<>A17;C18;D17&","&C18)
19 1 Schuh 43 42,43
20 1 Schuh 44 42,43,44
21 2 Schuh 38 38
22 2 Schuh 39 38,39
Beispiel:
http://www.workupload.com/file/KWjWh7v4
=INDEX(Tabelle2!$C$1:$C$100;KKLEINSTE(WENN(Tabelle2!$A$1:$A$100=Tabelle1!$A1;ZEILE(Tabelle2!$C$1:$C$100);FALSCH);SPALTE(A1)))
ACHTUNG: Formel-Eingabe/Eintippen mit STRG+Shift+Return abschließen, da es sich um eine sog. Matrixformel handelt. Diese erhält dadurch aussen herum geschweifte Klammern { } welche jedoch nicht mit eingetippt werden da sie durch diese Tastenkombination entstehen.
Formel in die Zelle hinter 35,95 der Tabelle 1 schreiben und dann nach rechts (für weitere Schuhgrößen des Artikels 0001) und nach unten für 0002 etc. kopieren.
Deine Tabelle 2 steht bei meiner Formel auch auf Tabellenblatt 2
Ja, das geht denk ich mittels Formel.
Muss mich aber erstmal für die Arbeit fertig machen und dorthin fahren ;) Ich schau von dort aus wieder rein.
Hallo,
das kumulieren der Größen funktioniert:
1 Schuh 42 42
1 Schuh 43 42,43
1 Schuh 44 42,43,44
2 Schuh 38 38
2 Schuh 39 38,39
Allerdings erhalte ich leider nicht den gewünschten Rückgabewert:
1 Schuh Mann 35,95 42
2 Schuh Frau 72,95 38
Was mache ich falsch?