Frage stellen
0

WENN ODER und FINDEN als Funktion verknüpfen

gefragt 2017-03-06 16:52:43 +0200

inJesus Gravatar-Bild

updated 2017-03-06 17:30:14 +0200

Lupp Gravatar-Bild

Hallo

Ich möchte, dass in der Zelle der Formel "DLR" angezeigt wird, wenn im Feld Z1 die Zeichenfolge "dlr", "DLR" oder "Dlr" vorkommt.

Leider klappen meine 2 besten Versuche noch nicht.
=WENN(ODER(FINDEN("dlr";$Z1));(FINDEN("DLR";$Z1));(FINDEN("Dlr";$Z1));"DLR")
=WENN(FINDEN(ODER("dlr";"Dlr";"DLR");$Z1);"DLR";)
(Formeln in "pre - code" gesetzt. Lupp)

Würde mich über eine Lösung freuen.

Herzlich, Klaus


Licht, Liebe, Heilung, Vergebung, Befreiung, ewiges Leben und veränderte Menschen - für alle, die ihr anschreibt http://j.mp/lebenfueralle - http://j.mp/think2denk

edit retag flag offensive close merge delete

Comments

Und was, wenn ich 2 oder mehr Zellen auf "dlr" durchsuchen möchte? Ist irgendwo dlr drin, egal welcher Gross-klein-Schreibung, soll "DLR" ausgegeben werden.

inJesus Gravatar-BildinJesus ( 2017-03-18 16:59:10 +0200 )edit
1

geantwortet 2017-03-06 17:33:20 +0200

Sputnik Gravatar-Bild
=WENN(FINDEN("DLR";GROSS($Z1));"DLR")
edit flag offensive delete link mehr

Comments

@Sputnik: Das ist natürlich die klare, kurze Antwort. (Auch wenn sie das Problemchen mit dem "Powidlrezept" unbeachtet lässt.)
Ich wollte nur ein paar zusätzlich Information für einen neuen "Kunden" liefern, nicht deine Antwort bekriteln.

Lupp Gravatar-BildLupp ( 2017-03-06 18:22:47 +0200 )edit

Funktioniert bei mir. Merci. Elegante Lösung.

Und was, wenn ich 2 oder mehr Zellen auf "dlr" durchsuchen möchte? Ist irgendwo dlr drin, egal welcher Gross-klein-Schreibung, soll "DLR" ausgegeben werden.

inJesus Gravatar-BildinJesus ( 2017-03-18 16:54:42 +0200 )edit
0

geantwortet 2017-03-06 18:17:17 +0200

Lupp Gravatar-Bild

(Bitte nicht pauschal "funktioniert nicht", sondern konkret was tatsächlich passiert angeben!)

FINDEN liefert die Position im Text zurück, an der das gefundene Stück beginnt - wenn es gefunden wird. Falls der Suchtext nicht gefunden wurde, wird ein Fehlerwert zurückgegeben. Der wird dann durchgereicht bis zum Endergebnis der Formel. (Funktionen, die ausdrücklich nach einem Fehler fragen, können ihn "verschwinden" lassen. Auch ISNUMBER() und ISTEXT() sagen einfach ein fehlerfreies Nein wenn ein Fehler vorliegt.)

Zu Formel 1:
Weil mindesetns zwei der Suchtexte nicht gefunden werden, entsteht immer ein Fehler.
Würde der ODER-Teil der Formel doch einmal FALSCH sagen würde die Formal auch nicht wissen, was sie ausgeben soll: Die Alternative fehlt. Weil "gar nichts" nicht gilt, gibt WENN in seienr Verzweiflung dann FALSCH zurück.

Zu Formel2:
ODER kann man nur auf Listen von logischen Werten / Ausdrücken anwenden. Texte kann man verketten, aber nicht verodern. Alternative fehlt wie beim ersten Fehler.

Gemeinsam: Drei Schreibungen zu listen ist umständlich. Wenn nicht z.B. "DLr" auch auftreten kann, und dann anders behandelt werden muss, kannst du alle Fälle zusammenfassen, indem du ganz auf Großscheibung umstellst, oder statt FIND() SEARCH() verwendest. Diese Funktion lässt nämlich den Unterschied zwischen Groß- und Kleinschrift unbeachtet.

Eine Formel, die Arbeiten sollte, ist dann:
=IF(ISNUMBER(SEARCH("dlr";$Z1));"DLR";"")
=IFERROR(SEARCH("dlr";$Z1))>0;"DLR";"");"")
geht auch - und so manche andere Variante.

Hinweise:
1. Ich schalte nicht gerne dauern zwischen verschiedenen Sprachen für die Funktionsnamen um. Du findest sicher leicht was Passendes. "International" könnte da jeder erwägen, der schon mal ein englisches Wort gesehen hat. Good luck!
2. Die hier diskutierten Formeln (auch meine) finden das kritische Textstück auch in "Powidlrezept". Wenn du das nicht zulassen willst, musst du in den Optionen "Reguläre Ausdrücke in Funktionen" zulassen und mit SEARCH statt nach "dlr" z.B. nach "\bdlr\b" suchen. "\b" bedeutet in regulären Ausdrücken eine Wortgrenze ohne dass ein tatsächliches Zeichen erfasst wird.

edit flag offensive delete link mehr

Comments

Das ist natürlich die ausführliche Antwort. Ich war nur schreibfaul. Deshalb die Kurzversion. Noch ein Tip: Verschachtelte Formeln zerlegen. In einzelne Zellen und darauf beziehen. Damit sieht man in welchem Teil der Fehler ist. In meinem aktuellen Projekt habe ich bis zu 6 ineinander verschachtelte Formeln. Wenn ich die nicht zerlege finde ich den Fehler nie. Viel Spaß noch.

Sputnik Gravatar-BildSputnik ( 2017-03-07 14:43:43 +0200 )edit

@Sputnik: Guter Tip fürs "Debuggen" von Spreadsheets. Und oft wird es dann zweckmäsig sein, die Teile der zerlegten Labyrinthformel in Helferspalten stehen zu lassen.

Lupp Gravatar-BildLupp ( 2017-03-07 15:54:09 +0200 )edit

Funktionieren die Englisch-sprachigen Formeln auch im deutschen Libre Office? Bei mir klappte deine erste Formel nicht.

inJesus Gravatar-BildinJesus ( 2017-03-18 16:58:08 +0200 )edit

Die englischen Funktionsnamen liegen immer in der gespeicherten Datei vor. Sie werden auch unter jedem Gebietsschema unterstützt, wenn man das unter 'Optionen' > 'LibO Calc' > 'Formeln' einstellt.
(Bei rund 100 UI-Sprachen und rund 200 Lokalisierungen ("Gebietsschemata") ist m.E. lebendige Unterstützung nur möglich wenn ein wenig internationaliesiert wird.

Lupp Gravatar-BildLupp ( 2017-03-18 18:12:44 +0200 )edit
Registrieren oder einloggen, um zu antworten

Antwortwerkzeuge

1 follower

Stats

Asked: 2017-03-06 16:52:43 +0200

Seen: 38 times

Last updated: Mar 06