Seite 1 von 1

Err: 509 über Suche

Verfasst: Di 20. Jan 2015, 23:17
von giorgio100
Hallo,

versuche gerade über folgenden Code:

=WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";A1))>0;"";"Grundmenge 1 Stück");
WENN(ISTFEHLER(SUCHEN("2 bis 10 Stück";A1))>0;"";"Grundmenge 2 Stück")

die Zelle A1 auf "1 bis 4 Stück" und "2 bis 10 Stück" mit SUCHEN abzufragen.

Wenn ich nur die erste Code-Zeile eingebe, dann klappt es problemlos. Wenn ich die zweite
Code-Zeile mit angebe, dann bekomme ich die Fehlermeldung. Eventuell kann man den Code auch verkleinern?

Musterdatei anbei...

Gruss Jürgen

Re: Err: 509 über Suche

Verfasst: Di 20. Jan 2015, 23:58
von karolus
Man könnte das mit einer simplen SVERWEIS-formel erledigen, und dazu solltest du hier auch jede Menge Beispiele finden, und selbst umsetzen ohne dir das nochmal vorkauen zu lassen.

Re: Err: 509 über Suche

Verfasst: Mi 21. Jan 2015, 14:05
von giorgio100
... ja könnte man - aber das beantwortet meine Fragen nicht.

Am beste jeder kaut immer alles selber durch - dann kann man dieses Forum hier schliessen. Ich habe bestimmt 2 Stunden
im Internet gesucht und auch selber "rumgekaut"

Mein Gott ist das ein unhöflich Art hier... Wenn du keine Lust zum Antworten hast,
dann lasse es einfach, besser als hier den grossen Gott zu spielen...

Re: Err: 509 über Suche

Verfasst: Mi 21. Jan 2015, 16:20
von mikele
Hallo,

wenn das Problem darin besteht, aus den Texten der Spalte A die erste Zahl herauszufilten, kannst du folgende Formel verwenden:

Code: Alles auswählen

=VERKETTEN("Grundmenge ";LINKS(A1;FINDEN(" bis";A1)-1);" Stück")

Re: Err: 509 über Suche

Verfasst: Mi 21. Jan 2015, 17:22
von giorgio100
mikele hat geschrieben:Hallo,

wenn das Problem darin besteht, aus den Texten der Spalte A die erste Zahl herauszufilten, kannst du folgende Formel verwenden:

Code: Alles auswählen

=VERKETTEN("Grundmenge ";LINKS(A1;FINDEN(" bis";A1)-1);" Stück")
Hallo mikele,

nicht ganz. Hier mal die Formel, an der ich arbeite und bis dahin funktioniert

WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";B2))>0;"";"1")&
WENN(ISTFEHLER(SUCHEN("2 bis 16 Stück";B2))>0;"";"2")&
WENN(ISTFEHLER(SUCHEN("3 bis 15 Stück";B2))>0;"";"3")&
WENN(ISTFEHLER(SUCHEN("6 bis 24 Stück";B2))>0;"";"6")&
WENN(ISTFEHLER(SUCHEN("5 bis 50 Stück";B2))>0;"";"5")&
WENN(ISTFEHLER(SUCHEN("10 bis 50 Stück";B2))>0;"";"10")&
WENN(ISTFEHLER(SUCHEN("15 bis 150 Stück";B2))>0;"";"15")&
WENN(ISTFEHLER(SUCHEN("20 bis 200 Stück";B2))>0;"";"20")&
WENN(ISTFEHLER(SUCHEN("50 bis 500 Stück";B2))>0;"";"50")


Ich prüfe aus A2 das Feld B2 auf die Text "1 bis 4 Stück" und "2 bis 16 Stück usw. Wenn es zutrifft , dann schreibe ich eine 1 oder 2 usw.

Wenn keiner der Texte zutrifft, dann möchte ich eine 1 schreiben. Das kriege ich leider nicht hin und bräuchte Hilfe.

Ich habe es mit dieser Formel schon probiert. Die 1 wird dabei immer geschrieben:

WENN(ISTFEHLER(SUCHEN"(1 bis 4|2 bis 16|3 bis 15|6 bis 24|5 bis 50|10 bis 50|15 bis 150|20 bis 200|50 bis 500) Stück";B2))>0;"";"1")

... Musterdatei ist dabei (ohne der letzten Formel). Ich hoffe es ist nicht zuviel falsch. :-)

Gruss Jürgen

Re: Err: 509 über Suche

Verfasst: Mi 21. Jan 2015, 18:20
von mikele
Hallo,

noch mal nachgefragt:
Immer wenn in Spalte B der Text "x bis y Stück" dann möchtest du in der Spalte A den Wert x haben. Steht in B jedoch ein anderer Text (Was wäre da möglich?) soll eine 1 erscheinen.
Ist das so korrekt? Oder kann in B auch "47 bis 103 Stück" stehen und dann soll auch eine 1 erscheinen, weil der Fall nicht betrachtet werden soll?

Re: Err: 509 über Suche

Verfasst: Mi 21. Jan 2015, 20:19
von balu
Hallo Jürgen!

Schon mal mit der Hilfe (F1) gearbeitet, und dabei die Hilfetexte zu den verwendeten Funktionen durchgelesen? Nun, ich weiß nicht welche LO Version Du hast, aber ich arbeite hauptsächlich mit ner älteren OOo Version und von daher weiß ich das Du bei diesem Formelkonstrukt einen generellen Murks eingebaut hast.

Code: Alles auswählen

WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";B2))>0;....)
SUCHEN sucht nach einen bestimmten Text, okay. Gibt aber einen Fehler aus, wenn das gesuchte nicht gefunden wird. Und diesen Fehler fragst Du mit ISTFEHLER ab, auch okay.
ABER!!
Was glaubst Du wieviele Fehler SUCHEN bei nicht gefunden ausgibt?
Na!?
Ganz einfach!
Nur einen einzigen.
Und da dieser Formelkonstrukt in WENN in der Wahrheitsüberprüfung steht, und ISTFEHLER im Fehlerfall einen Wahrheitswert ausgibt, ergibt WAHR (Überprüfung durchgeführt) & WAHR (ISTFEHLER) einfach nur WAHR. Und folglich wird der DANN-Teil der WENN ausgeführt.

Wenn ISTFEHLER aber auf Grund des gefundenen Textes von SUCHEN keinen Fehler ausgibt, dann ergibt sich folgende Konstellation; WAHR (Überprüfung durchgeführt) & FALSCH (ISTFEHLER), und das macht dann also FALSCH. Dadurch wird dann der SONST-Teil von WENN ausgeführt.

Und in folge der WAHRHEITSLOGIK ist das ">0" absoluter Blödsinn. Es reicht schlicht und einfach

Code: Alles auswählen

WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";B2));....)
So viel zum Thema Grundwissen.



Butter bei die Fische! Um was geht es denn genau?
Die erste Formel von dir ist nicht identisch mit der zweiten. Nein nicht die schreibweise, sondern deren Inhalt.

Code: Alles auswählen

=WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";A1))>0;"";"Grundmenge 1 Stück");
WENN(ISTFEHLER(SUCHEN("2 bis 10 Stück";A1))>0;"";"Grundmenge 2 Stück")

Code: Alles auswählen

WENN(ISTFEHLER(SUCHEN("1 bis 4 Stück";B2))>0;"";"1")&
WENN(ISTFEHLER(SUCHEN("2 bis 16 Stück";B2))>0;"";"2")&
...
"1 bis 4 Stück" ist identisch, aber der Rest nicht mehr.

Und wieso teilst Du "XX bis XXX Stück" nicht auf mehrere Spalten auf, warum zusammen in einer Zelle? Wenn aufgeteilt, dann liese sich bestimmt einen einfacheren Weg finden.



Gruß
balu