Clever-Excel-Forum

Normale Version: SVERWEIS mit mehreren Kriterien (o.ä.)
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Moin in die Runde, vielleicht könnt ihr mir weiterhelfen.

Im Prinzip habe ich ein Zielblatt und ein Quellblatt in einer Datei, siehe Anhang für Beispiel-Nachbau.

In dem Zielblatt möchte ich zu jeder Artikelnummer bestimmte Werte in passend aus dem Quellblatt ziehen, für jede Artikelnummer soll nur eine Zeile existieren. In dem Quellblatt sind zu einer Artikelnummer jedoch mehrere Zeilen, welche je detailliertere Daten verschiedener Kategorien enthalten. Sagen wir zu Preis, Farbe, Gewicht, usw..
In meinem Zielblatt möchte ich aber eben nur einzelne Daten rausziehen, die dann in den Spalten der jeweiligen Artikelnummer erscheinen.

Ich habe bereits verschiedene Varianten probiert, darunter einen modifizierten SVERWEIS mit WAHL-Funktion. Leider immer ohne Erfolg.

Vielleicht hat hier jemand anhand der Beispieldatei im Anhang eine Idee, wie das Problem gelöst werden könnte.

Vielen Dank und viele Grüße!
Hallo,

ich würde das mit PowerQuery bzw. ab Office 2016 unter "Daten" -> "Abrufen und transformieren" -> "Neue Abfrage".

Dann Spalte Kategorie auswählen -> "Spalte pivotieren" -> "ohne Aggregation"
Du könntest dir durch VERKETTEN einen key aus Artikelnummer und Kategorie auf beiden tabs zusammenbauen. Dann suchst du per SVERWEIS einfach nach dem entsprechenden key in der Quelldatei.
Hallo!

Ja Verketten war auch mein Ansatz =INDEX(Quellblatt!$E$3:$E$11;VERGLEICH($B3&Zielblatt!E$2;Quellblatt!$H$3:$H$11;0))

Liebe Grüße
Alex
Hier eine Variante mit Verkettung in Kombination mit SVERWEIS und WAHL:
Code:
{=SVERWEIS($B3&"|"&E$2;WAHL({1.2};Quellblatt!$B$3:$B$11&"|"&Quellblatt!$D$3:$D$11;Quellblatt!$E$3:$E$11);2;FALSCH)}
Achtung Matrixformel! Die Klammern {} nicht eingeben, stattdessen die Formel mit Strg+Shift+Enter abschließen!

Hier noch eine Variante mit VERWEIS:
Code:
=VERWEIS(2;1/(($B3=Quellblatt!$B$3:$B$11)*(E$2=Quellblatt!$D$3:$D$11));Quellblatt!$E$3:$E$11)

Der Vollständigkeit halber noch die (funktionierende/n) Variante/n mit INDEX/VERGLEICH:

als Matrixformel:
Code:
{=INDEX(Quellblatt!$E$3:$E$11;VERGLEICH($B3&"|"&E$2;Quellblatt!$B$3:$B$11&"|"&Quellblatt!$D$3:$D$11))}

ohne Matrixformel:
Code:
=INDEX(Quellblatt!$E$3:$E$11;VERGLEICH($B3&"|"&E$2;INDEX(Quellblatt!$B$3:$B$11&"|"&Quellblatt!$D$3:$D$11;)))

Ich würde aber trotzdem die Power Query Variante bevorzugen.
Hallo, der TE muss die CSE-Formeln nicht mit CSE abschließen... ... ich wäre auch für PQ
Danke für die Anregungen. Ich habe es dann schlußendlich mit einer simplen Pivot-Tabelle und entsprechend simplen SVERWEISen lösen können - manchmal ist es dann doch einfacher, als man es sich vorstellt Tongue
Zielblatt!E3: =GLÄTTEN(TEIL(WECHSELN(TEXTVERKETTEN(" ";;WENN(B3=Quellblatt!B$3:B$11;Quellblatt!E$3:E$11;""));" ";WIEDERHOLEN(" ";49));SEQUENZ(;3)*49-48;49))

als Vorwegnahme eines bald wohl möglichen

Zielblatt!E3: =SPLITTEN(TEXTVERKETTEN(" ";;WENN(B3=Quellblatt!B$3:B$11;Quellblatt!E$3:E$11;""))

wobei die Datensätze in der Reihenfolge der Kreuztabellierung angenommen sind (wie im Beispiel).