Bestimmte Zeichen aus einer Zeichenkette löschen

Hallo RagTime-Gemeinde,

gibt es eine Formel, mit der man ein bestimmtes Zeichen oder
einen Teil in einem String löschen kann, ähnlich wie Glätten
oder Säubern, aber für ein wählbares Zeichen, also z.B. sowas wie

Rausschmeiss("X-";A1;4)

das aus dem Text in Zelle A1 ab dem 4. Zeichen ALLE "X-"
entfernen würde, also aus

"X-Methoden, X-Strahlen und X-Ray"
"X-Methoden, Strahlen und Ray"

macht.

Mit

Rausschmeiss("X-";A1)

wär ich auch schon glücklich!

Dank im Voraus!
Steffen

Re: Bestimmte Zeichen aus einer Zeichenkette löschen

#8830 On 10 August, 2009 18:06 Thomas Kaegi said,

Hallo Steffen

Manuell: Wähle die Zelle A1 (oder einen Zellbereich) aus und dann Suchen "X-", Ersetzen mit "nichts" und als Suchbereich "Auswahl". Dann kannst du "Ersetzen und Weitersuchen" um zu löschen, oder "Suchen" um zu überspringen. Das lässt sich mit einer Hand an der Maustaste und der anderen auf der Enter-Taste relativ speditiv auch in grösserem Umfang machen. Aber man vertut sich dabei leicht.

Automatisiert: Das lässt sich in deinem Beispiel mit folgender Formel machen:
Ersetzen(Ersetzen(A1;Finden('X-';A1;4);2;'');Finden('X-';Ersetzen(A1;Finden('X-';A1;4);2;'');4);2;'')
Diese Formel findet jedoch nur zwei zu eliminierende Textstellen, weitere aber nicht.

Unter Anwendung der Funktion "Ersetzen" kannst du aber ein Formelpaar bauen, die den Text mehrfach durchsucht, bis alle Stellen ersetzt sind:
In der Zelle A1 stehe ein Text, in welchem beliebig oft "X-" vorkommt. Alle Vorkommen dieses Textes nach Position 4 sollen entfernt werden. Setz in Zelle B1 die Formel:
Ersetzen(A1;Finden('X-';A1;4);2;'')
und in Zelle C1 die Formel:
Wenn(Finden('X-';A1;4);SetzeZelle(B1;A1))
Zwar steht am Schluss in Zelle B1 ein Bereichsfehler (der lässt sich vermeiden, wenn die erste Formel noch mit der gleichen Wenn-Klausel ergänzt wird, wie in der zweiten angewendet). Aber in Zelle A1 steht der gewünschte Text. Natürlich können der gesuchte Text und die Position, von welcher an der Text eliminiert werden soll, auch variabel sein. Dann müssten die Werte in Zellen stehen, die in obigen Formeln referiert werden.

Mit freundlichem Gruss
Thomas

Re: Bestimmte Zeichen aus einer Zeichenkette löschen

#8829 On 10 August, 2009 18:02 Lutz Cleffmann said,

Die Funktionen
Finden (Suchtext; Text; ErstesZeichen)
und
Ersetzen (AlterText; ErstesZeichen; Länge; NeuerText)
sind Dein Freund. Wenn Du diese beiden Funktionen richtig kombinierst, passiert genau das, was Du suchst. Nähere Erklärungen bietet die RagTime Referenz unter dem Menüpunkt "Hilfe".

Beste Grüße
Lutz Cleffmann