PDA

Vollständige Version anzeigen : FINDEN Funktion mit Suchbegriffen aus anderem Tabellenblatt


maria_2609
12.07.2012, 10:01
Hallo zusammen!

Ich habe ein großes Problem, was das Finden von bestimmten Begriffen in einer Zelle mit Excel 2010 angeht.
Die Ausgangssituation ist folgende: Es gibt eine Tabelle mit z.B. Spalte A in der mehrere Begriffe stehen. z.B.:

Chiffonblusen
Lederschuhe
Bettlaken Baumwolle
T-Shirts Jersey
ect.

Also immer ein Produkt mit seinem Material, manchmal vor der Produktbezeichnung, manchmal danach. Es gibt allerdings auch Zellen, in denen kein Material vorhanden ist. Ich versuche jetzt in Spalte B nur das Material auszugeben - mit mäßigem Erfolg. Der Ursprungsgedanke war, alles mit einer Wenn-Funktion zu lösen. Also
WENN(ISTZAHL(FINDEN("Baumwolle";A2));"Baumwolle";WENN(ISTZAHL(FINDEN("Chiffon";A2));"Chiffon"; ....
Es sind aber zu viele Materialien (insgesamt 71) und es wäre zu aufwendig, wenn Änderungen auftreten sollten.

Es gibt allerdings im Tabellenblatt "Material" eine Liste, bei der in Spalte A alle vorhanden Materialien aufgelistet sind.
Ist es möglich, meine Spalte A im Tabellenblatt 1 nach allen Begriffen im Tabellenblatt "Material" zu durchsuchen und wenn ein Begriff gefunden wurde, diesen dann in Spalte B auszugeben?


Das würde mir echt den Tag retten :)

Vielen Dank schon mal in Voraus!
Maria

Superingo2
12.07.2012, 11:00
Hallo Maria,

schreibe in B1:

{=INDIREKT("Material!Z"&SUMME(ISTZAHL(FINDEN(Material!$A$1:$A$71;A1;1))*ZEILE(Material!$A$1:$A$71))&"S1";0)}

Achtung geschweifte Klammern nicht miteingeben, sondern durch STRG+SHIFT+RETURN erzeugen!

Wichtig ist auch, dass nun im Tabellenblatt Material in Spalte A von Zeile 1 bis 71 etwas steht und das auch nicht doppelt. Auch nicht in Teilen wie: Baumwolle und wolle!
Achtung, bitte auch Groß- und Kleinschreiben beachten!

Viel Spass
LG Ingo

Superingo2
12.07.2012, 11:17
Hallo Maria,

als witzige Zusatzinfo kannst Du auch diese Formel nehmen:

{=INDIREKT("Material!Z"&MAX(1;SUMME(ISTZAHL(FINDEN(Material!$A$1:$A$72;A1;1))*ZEILE(Material!$A$1:$A$72) ))&"S1";0)}

Wenn Du nun über Deine 71 Materialeinträge zusätzlich in Zeile 1 noch "ohne Materialangabe" einträgst, erhälst Du bei jedem nicht gefundenen Material im Produktnamen die Info "ohne Materialangabe". Diese Angabe ist natürlich variabel nach Deinen Wünschen anpassbar.

LG Ingo

maria_2609
12.07.2012, 11:17
Hallo Ingo,

das klappt schon mal super :) Vielen Dank!

Aber was passiert, wenn etwas doppelt vorkommt? Denn es gibt in der Liste natürlich sowohl Baumwolle als auch Wolle oder Wollvlies...

Und die Möglichkeit der Zusatzinfo ist auch großartig :)

Danke & LG
Maria

Superingo2
12.07.2012, 11:22
Hallo Maria,

bei doppelten Einträgen kommt "Driss" heraus. Er summiert alle Zeilenfreffer. Wenn nur einmal getroffen, dann ist die Summe aller Zeilen die Zeilennummer mit dem richtigen Material. Wenn er aber mehrere Treffer hat, dann summiert er alle diese Zeilennummern und gibt das Material heraus, welches in dieser summierten Zeile steht. Also zufälligen Blödsinn!

Groß und Kleinschreibung kann meine Formel unterscheiden!

LG Ingo

maria_2609
12.07.2012, 11:27
Okay, das mit der Groß- und Kleinschreibung ist doch schon mal was, dann ändere ich die einfach für die doppelten oder dreifachen Begriffe und versuch es dann nach mal :)

Danke!
LG
Maria

maria_2609
12.07.2012, 11:37
Nagut, ein Versuch wars wert... aber jetzt klappt garnichts mehr... Ich kann den Input in Spalte A nicht ändern was die Groß- und Kleinschreibung angeht. Und bei der einen Hälfte der Werte kommt #Bezug als Ergebnis, bei der anderen eine 0. Bei Leder klappt es wunderbar, obwohl in der Liste auch Kunstleder ist, aber bei Wolle hörts auf...
Kann man denn eventuell auch mit einem SVERWEIS nach Zellteilen suchen?

LG,
Maria

ASE
12.07.2012, 12:03
Hallo Maria,
wenn Du möchtest, ich kann eine VBA Lösung bieten die macht es ganz bestimmt. Aber ich habe keine Lust mir erst noch ein Muster-Sheet zu erstellen. Könntest Du ein Muster-Sheet hoch laden, dann geht es schneller.
Und bitte genau beschreiben was soll wann passieren und wohin.

Superingo2
16.07.2012, 08:16
Hallo Maria,

warum bei Dir "#Bezug" oder "0" herauskommt, ist schwer zu sagen. Wenn Du Deine Datei hier hochladen würdest, könnte ich Dir besser helfen.
Voraussetzung für meine Formel ist, dass Du die Materialliste genau in A1 bis A72 stehen hast und dort alle Zellen gefüllt sind und in A1 "ohne Materialangabe" oder Ähnliches steht.

Übrigens, den Teil mit der Summenformel kannnst Du noch weglassen, es reicht auch:

{=INDIREKT("Material!Z"&MAX(1;ISTZAHL(FINDEN(Material!$A$1:$A$72;A1;1))*ZEILE(Material!$A$1:$A$72))&"S1";0)}

Aber beide Formeln funktionieren gleichermassen gut. Also daran kann Dein Problem nicht liegen.

LG Ingo