Verweisfunktion unter Bedingungen
#1
Hallo liebe Forengemeinde,

ich bin eben beim googlen auf das Board hier gestoßen und bestimmt gibt es hier jemanden der mir helfen kann, da ich was excel betrifft doch noch relativ unerfahren bin.
Folgendes Problem:

Ich habe eine Tabelle mit mehreren Tausend Zeilen(Produkten) und dazugehörigen Eigenschaften(Preis, EAN, etc.).
Die Produkte sind zu Teilen Variantenprodukte, d.h. sie unterscheiden sich beispielsweise in der Farbe. Viele der restlichen Eigenschaften sind aber diesselben.

Mein Ziel wäre es nun, eine Schaltfläche zu bekommen, in die man eine Artikelnummer(Spalte A) eingibt und als Ausgabe alle Artikel, welche die selbe Eigenschaften (im Beispiel Spalte B) besitzen bekommt. Zusätzlich sollte zu jedem der ausgegeben Artikel jeweils die Eigenschaft aus Spalte C wiedergegeben werden (Im Beispiel: EAN aus Spalte C).

Möglicherweise habe ich mich etwas verschwurbelt ausgedrückt, beim Ansehen der Datei wird es bestimmt ersichtlich:
Beispiel zur Datei: Ich möchte bspws. in ein Schaltfeld "5" eingeben und als Ausgabe
1 - 12345
2 - 12346
3 - 12347
4 - 12348
5 - 12349
6 - 12350

erhalten.


Angehängte Dateien
.xls   Beispiel.xls (Größe: 14,5 KB / Downloads: 7)
Top
#2
Hallo,

das wäre auch ohne VBA realisierbar, nur befürchte ich, dass Deine Artikelnummern in realiter anders aussehen und eine Gruppierung nicht so einfach möglich ist.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#3
Stimmt. Alle mehr oder weniger nach dem Verfahren "ABC123456", sprich drei buchstaben und einige Ziffern. Die Spalte B ist aber bei denjenigen Artikeln welche ich gerne gruppiert dargestellt hätte immer diesselbe, und auf diese müsste es ja eigentlich ankommen, oder?
Top
#4
Hallo,

dann stelle mal eine Mustertabelle vor!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#5
Hi,

mit diversen Hilfsspalten bekommst Du die Suchbegriffe raus.

Leider habe ich das VERWEIS() noch nicht richtig verstanden, darum werden die Artikelnummern rechts nicht richtig aufgezählt:

Tabelle1
ABCDEFGHIJK
1ArtikelnummerBezeichnung EANHilfsspalte 1 Hilfsspalte 2Abfrage ArtikelArtikelnummerEAN
2ABC12345Super Teil12345ABC12345Super TeilABC12345ABC1235912359
3ABC12346Super Teil12346ABC12346ABC1235912359
4ABC12347Super Teil12347ABC12347ABC1235912359
5ABC12348Super Teil12348ABC12348ABC1235912359
6ABC12349Super Teil12349ABC12349ABC1235912359
7ABC12350Super Teil12350ABC12350ABC1235912359
8ABC12351Klasse Ding12351ABC12351ABC1235912359
9ABC12352Klasse Ding12352ABC12352ABC1235912359
10ABC12353Klasse Ding12353ABC12353ABC1235912359
11ABC12354Klasse Ding12354ABC12354ABC1235912359
12ABC12355Klasse Ding12355ABC12355ABC1235912359
13ABC12356Klasse Ding12356ABC12356ABC1235912359
14ABC12357Klasse Ding12357ABC12357ABC1235912359
15ABC12358Auch schön12358ABC12358ABC1235912359
16ABC12359Auch schön12359ABC12359ABC1235912359
17012359

verwendete Formeln
Zelle Formel Bereich N/A
F2=SVERWEIS(H2;A2: D16;2;0)
D2: D16=A2
J2:J16=VERWEIS($F$2;$B2:$D$16)
J17=VERWEIS($F$2;$B$16:$D17)
K2:K17=SVERWEIS($J$2;$A$2:$D$16;3;0)
Excel-Inn.de
Hajo-Excel.de
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 19.07 einschl. 64 Bit

Top
#6
Hallo Ralf,

wenn, dann so:

Arbeitsblatt mit dem Namen 'Tabelle1'
 FGH
23112345
3 212346
4 312347
5 412348
6 512349
7 612350

ZelleFormel
G2=WENNFEHLER(INDEX(A:A;AGGREGAT(15;6;ZEILE($B:$B)/($B:$B=SVERWEIS($F$2;$A:$C;SPALTE(B$1);0));ZEILE(A1)));"")
H2=WENNFEHLER(INDEX(C:C;AGGREGAT(15;6;ZEILE($B:$B)/($B:$B=SVERWEIS($F$2;$A:$C;SPALTE(B$1);0));ZEILE(B1)));"")
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#7
Hallo Edgar.

Tausend Dank, das sieht im Ergebnis genauso aus wie ich es mir gewünscht habe - mit einer Einschränkung: Wir benutzen excel2003 und das kennt die wennfehler funktion nicht. Hast du eine Idee wie ich das umstellen könnte damit es passt?
Top
#8
Hallo,

2003 kennt auch die Aggregat-Funktion nicht. Also alles für den Mülleimer!

ungetestet:



Code:
=WENN(ISTFEHLER(INDEX(A:A;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE(B$1);0);ZEILE($B:$B));ZEILE(A1))));"";INDEX(A:A;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE(B$1);0);ZEILE($B:$B));ZEILE(A1))))
Matrixformel! Mit STRG+SHIFT+ENTER abschließen!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#9
Hallo Edgar,

ich finde es super wie schnell du hier immer antwortest und wie hilfsbereit du bist. Danke danke danke!

Leider klappt es mit der Formel nicht. Gebe ich jetzt eine beliebige Artikelnummer in F2 ein, kommt in G2 stets als Ergebnis "Artikelnummer".
Top
#10
Hallo,

Arbeitsblatt mit dem Namen 'Tabelle1'
 FGH
23112345
3 212346
4 312347
5 412348
6 512349

ZelleFormel
G2{=WENN(ISTFEHLER(INDEX(A:A;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE($B$1);0);ZEILE($B:$B));ZEILE(A1))));"";INDEX(A:A;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE($B$1);0);ZEILE($B:$B));ZEILE(A1))))}
H2{=WENN(ISTFEHLER(INDEX(C:C;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE($B$1);0);ZEILE($B:$B));ZEILE(B1))));"";INDEX(C:C;KKLEINSTE(WENN($B:$B=SVERWEIS($F$2;$A:$C;SPALTE($B$1);0);ZEILE($B:$B));ZEILE(B1))))}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top


Gehe zu:


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