Funktion FINDEN() oder SUCHEN() gibt "#WERT!" zurück anstatt "0"

Hallo, Liste,

ich möchte wissen, ob in einer Zelle eine bestimmter Text enthalten ist
oder nicht.

=FINDEN("Beispieltext";A2;1)

Wenn der Text enthalten ist, wird eine Zahl (die Position)
zurückgegeben, ist sie allerdings nicht enthalten, wird nicht wie zu
erwarten "0" zurückgegeben sondern "#WERT!".

Gibt es eine andere Möglichkeit?

Ich benutze "LibreOffice 3.5.7.2 " unter UBUNTU 12.04.

Vielen Dank für Hilfe im voraus!

Rolf

Hi,

=FINDEN("Beispieltext";A2;1)

Wenn der Text enthalten ist, wird eine Zahl (die Position)
zurückgegeben, ist sie allerdings nicht enthalten, wird nicht wie
zu erwarten "0" zurückgegeben

Das würde *ich* nicht erwarten. :slight_smile:

sondern "#WERT!".

Gibt es eine andere Möglichkeit?

=WENN(ISTFEHLER(FINDEN("Beispieltext";A2;1));0;1)

:slight_smile:

Gruß,
Stefan

Hallo, Stefan,

Das würde *ich* nicht erwarten. :slight_smile:

also ein Bug?

Aber vielen Dank für den Workaround!

Viele Grüße
Rolf

Hi,

=FINDEN("Beispieltext";A2;1)

Wenn der Text enthalten ist, wird eine Zahl (die Position)
zurückgegeben, ist sie allerdings nicht enthalten, wird nicht wie
zu erwarten "0" zurückgegeben

Das würde *ich* nicht erwarten. :slight_smile:

sondern "#WERT!".

Gibt es eine andere Möglichkeit?

=WENN(ISTFEHLER(FINDEN("Beispieltext";A2;1));0;1)

Es geht auch noch kürzer:
=WENNFEHLER(FINDEN("Beispieltext";A2;1);0)

und das ist kein Bug sondern so gewollt.

Nein, eben nicht.

Wenn du fragst, welche Hausnummer Familie Meier in der Hauptstraße
hat, und wenn Familie Meier gar nicht in der Hauptstraße wohnt, dann
erwartest Du doch nicht "Hausnummer 0" als Antwort. :wink:

Gruß,
Stefan

Das geht aber nicht mit der LO3.5 die Rolf benutzt, WENNFEHLER wurde meines Wissen nach erst in einer LO-Version > 4 eingeführt.

Werner

ich möchte wissen, ob in einer Zelle eine bestimmter Text enthalten ist
oder nicht.

=FINDEN("Beispieltext";A2;1)

Wenn der Text enthalten ist, wird eine Zahl (die Position)
zurückgegeben, ist sie allerdings nicht enthalten, wird nicht wie zu
erwarten "0" zurückgegeben sondern "#WERT!".

Ja; die Suchfunktionen erwarten, dass das gesuchte Pattern zuverlässig
vorhanden ist. Du kannst entweder auf einen Fehler testen (siehe andere Postings),
oder Du kannst sicherstellen, dass die Voraussetzung auch zuverlässig erfüllt ist,
indem Du das Pattern einfach hinten nochmal dran hängst:

=FINDEN("Beispieltext";A2&"Beispieltext";1)

Je nachden, was Du mit dem Ergebnis weiter anstellst, musst Du u. U. das
Ergebnis noch Modulo nehmen o. ä., um auf das Ergebnis '0' zu kommen (wenn
Du den Fall 'nicht vorhanden' sowieso gesondert bearbeisten musst, kannst Du
Dir das natürlich sparen, und dort gleich auf ">LÄNGE(A1)" abfragen):

=REST(FINDEN("Beispieltext";$A$1&"Beispieltext";1);LÄNGE(A1)+1)

Wolfgang

aus anderen "Sprachen" kenne ich solche Funktionen und die liefern in
einem solchen Fall eben "0" zurück...

Viele Grüße
Rolf

Hallo

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

aus anderen "Sprachen" kenne ich solche Funktionen und die liefern in
einem solchen Fall eben "0" zurück...

Welche Sprachen sind daß denn??

Die Funktion analog dazu die **ich** kenne aus anderen "Sprachen", liefert in dem Fall **-1**, die **0** ist die Rückgabe falls der SubString gleich am Anfang auftaucht.

Gruß Werner

Hallo,

aus anderen "Sprachen" kenne ich solche Funktionen und die liefern in
einem solchen Fall eben "0" zurück...

Andere Tabellenkalkulationsprogramme (alle, die ich kenne) liefern
auch einen Fehlerwert zurück, wenn die FINDEN-Funktion den gesuchten
Text nicht findet. Ich möchte das (berechtigte) Geschrei nicht
hören, wenn sich LibreOffice hier anders verhalten würde und somit
zu den anderen Herstellern inkompatibel wäre. :wink:

Gruß,
Stefan

"Sie müssen bei diesem Auto aber Diesel tanken" - "Ich kenne das von
anderen Autos, die fahren doch auch mit Benzin ..."

Wolfgang, kopfschütelnd

Hallo,

Andere Tabellenkalkulationsprogramme (alle, die ich kenne) liefern
auch einen Fehlerwert zurück, wenn die FINDEN-Funktion den gesuchten
Text nicht findet. Ich möchte das (berechtigte) Geschrei nicht
hören, wenn sich LibreOffice hier anders verhalten würde und somit
zu den anderen Herstellern inkompatibel wäre. :wink:

Das sehe ich ein und ich denke, wir sollten es dabei bewenden lassen!

Ich meinte mit "Sprachen" z.B. SQL: INSTR() usw., die bei Nichtfinden
eben "0" liefern.

Viele Grüße
Rolf