Calc-Formel Teil() und Suchen() liefert falsche Ergebnisse

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

jgu02
**
Beiträge: 30
Registriert: Di, 05.03.2013 15:17

Calc-Formel Teil() und Suchen() liefert falsche Ergebnisse

Beitrag von jgu02 »

Hallo

Ich bin seit rund zwei Wochen auf LibreOffice umgestiegen, da Excel Office 2007/2010 zu sehr mit sich selbst beschäftigt ist, als mit der Berechnung von Zellen.

Hier mein Problem:
- Tabelle bestehend aus 1000 Zeilen mit 158 Spalten, 70% der Spalten rechnen oder dienen als Werte zum Rechnen
- Spalte [AV] enthält einen zusammengesetzten Namen (Vorname Name)
- In Spalte CG möchte ich den Vornamen heraussuchen mit der Formel:
=WENN(ISTLEER($AV1);0;TEIL($AV1;1;SUCHEN(" ";$AV1)-1)) --> dies funktioniert einwandfrei
- In Spalte CF möchte ich den Nachnamen heraussuchen mit der Formel:
=WENN(ISTLEER($AV1);0;TEIL($AV1;SUCHEN(" ";$AV1)+1;SUCHEN(" ";$AV1; SUCHEN(" ";$AV1)-1))) --> dies funktioniert nicht korrekt, denn
---- gewisse Namen werden korrekt angezeigt,
-----bei anderen Namen fehlt entweder der letzte Buchstabe oder
-----aber es fehlen gar zwei Buchstaben.

Ach ja, in der Spalte [AV] hat es nur ein einziges Leerzeichen, nämlich jenes zwischen Vorname und Name und auch am Schluss
hat es kein weiteres Leerzeichen. Bei einigen Vornamen könnten inskünftig auch noch ein Bindestrich vorhanden sein (z.B: Jean-Jaques Müller)

Was mache ich falsch?

Wer kann mir helfen. Besten Dank für eine rasche Hilfe.
Juerg
paljass
******
Beiträge: 803
Registriert: Do, 25.10.2012 07:25

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von paljass »

Hi Juerg,
leider teilst du uns nicht mit, welche Namen/Namenszusammesetzungen betroffen sind.
Du könntest versuchen, den letzten Teil deiner Formel =WENN(ISTLEER($AV1);0;TEIL($AV1;SUCHEN(" ";$AV1)+1;SUCHEN(" ";$AV1; SUCHEN(" ";$AV1)-1))) einfach durch 99 zu ersetzen.

Ansonsten musst du uns schon Beispiel nennen, sonst wirds ein heiteres Ratespiel.

Gruß
paljass
EDV ist wie U-Boot fahren - machst du ein Fenster auf, fangen die Probleme an.
jgu02
**
Beiträge: 30
Registriert: Di, 05.03.2013 15:17

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von jgu02 »

Hallo Paljass

Besten Dank für deine rasche Reaktion, auch wenn ich diese nicht ganz verstehe.

In der Spalte [AV] sind lauter (Vorname Name) eingetragen.
einige Beispiele:
Spalte AV ---> Spalte CF Name / Spalte CG Vorname
---------- ------------------ -----------------------
Hans Meier ------> Meier / Hans
Marianne Müller ------> Müller / Marianne
Dieter Keller ------> Keller / Dieter
Getrud Bretscher ----> Bretscher / Getrud

so sollte es nachher aussehen. Leider ist es aber so, dass die Vornamen richtig gefunden werden, hingegen werden bei den Nachnamen teilweise der letzte oder
gar die zwei letzten Buchstaben nicht angezeigt.

Verständlich?
jgu02
**
Beiträge: 30
Registriert: Di, 05.03.2013 15:17

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von jgu02 »

paljass hat geschrieben:Hi Juerg,
leider teilst du uns nicht mit, welche Namen/Namenszusammesetzungen betroffen sind.
Du könntest versuchen, den letzten Teil deiner Formel =WENN(ISTLEER($AV1);0;TEIL($AV1;SUCHEN(" ";$AV1)+1;SUCHEN(" ";$AV1; SUCHEN(" ";$AV1)-1))) einfach durch 99 zu ersetzen.

Ansonsten musst du uns schon Beispiel nennen, sonst wirds ein heiteres Ratespiel.

Gruß
paljass


Hallo Paljass

Auch wenn ich den Sinn der Formel, mit 99 nicht verstanden habe, so muss ich doch sagen, dass mit dieser Änderung die richtigen Resultate angezeigt werden.

Hurra!

Besten Dank!

Gruess
Juerg
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von balu »

Hallo Juerg,

versuchs mal hiermit.

Code: Alles auswählen

=WENN($AV1<>"";TEIL($AV1;SUCHEN("(| )[^ ]+$";$AV1)+1;99);"")
ACHTUNG!!! WICHTIG!!!
Nach dem Pipezeichen | und nach dem Hochzeichen (Dach) ^ ist jeweils EIN Leerzeichen!

Ich bin wohl jetzt nicht der schnellste gewesen, aber dafür ist die Formelalternative umso kürzer. :)

Die 99 ist eine beliebige Zahl, die die Länge des Wortes repräsentiert. Falls jemand aber einen Namenslänge von mehr als 99 Zeichen hat, z.B. ein Adeliger Proffesor, Doktor, Doktor sowieso, dann müsste die 99 wohl erhöht werden.



Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
jgu02
**
Beiträge: 30
Registriert: Di, 05.03.2013 15:17

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von jgu02 »

Hallo balu

Besten Dank für deine Variante:

Leider führt dies zu einem #WERT! Fehler.

Da ich jedoch mit der Variante 99 sehr zufrieden bin, und andererseits keine Nachnamen habe, die mehr als 30 Zeichen habe,
bleibe ich bei der Variante von Paljass.

Aber auch dir ganz herzlichen Dank.

Gruess
Juerg
paljass
******
Beiträge: 803
Registriert: Do, 25.10.2012 07:25

Re: Calc-Formel Teil() und Suchen() liefert falsche Ergebnis

Beitrag von paljass »

Hi,
@juerg

Code: Alles auswählen

einige Beispiele:
hier hatte ich Beispiel erwartet, bei denen deine Formel nicht funktioniert, weil du ja deshalb extra angefragt hast :roll:
Leider führt dies zu einem #WERT! Fehler.
Bei mir unter Win7 und AOo 3.4 nicht. Vermutlich hast du Extras - Optionen - OoCalc - Berechnen - Reguläre Ausdrücke in Formel ermöglichen nicht angehakt.
Ich bin wohl jetzt nicht der schnellste gewesen,
das lässt sich nicht weg diskutieren :lol:
aber dafür ist die Formelalternative umso kürzer
... das schon :D
Die Formel von Juerg und mir hat 55 Zeichen, deine hat 60 Zeichen :lol:
Aber lass es bitte damit gut sein, nicht dass du jetzt noch auf die Idee konnst, die Länge der Formel in Millimeter nachzumessen.

Gruß und schönen Abend noch
paljass
EDV ist wie U-Boot fahren - machst du ein Fenster auf, fangen die Probleme an.
Antworten