21.04.2017, 18:55
Hallo,
schaut euch bitte folgenden beispielhaften Code an:
Sub Leerzeichen_löschen()
Dim strZ$
strZ = " Eins zwei drei vier fünf "
strZ = Trim(strZ)
strZ = Replace(strZ, Mid(strZ, InStr(strZ, " "), InStrRev(strZ, " ") - InStr(strZ, " ") + 2), " . ")
End Sub
In meinem Beispielstring gibt es vor dem Wort eins und nach dem Wort fünf eine beliebige Anzahl von Leerzeichen. Die Anzahl der Leerzeichen zwischen den Wörtern drei und vier soll ebenfalls beliebig sein.
Die Aufgabe besteht nun darin die Leerzeichen am Satzanfang und Ende zu entfernen und zwischen den Wörter drei und vier den Punkt so zu setzen, wie ich dies in meinem funktionierenden Codebeispiel
gemacht habe.
Mir scheint meine Formel aber viel zu lang für eine so simple Aufgabe. Kann man das nicht effizienter erledigen?
Vielen Dank für eure Hilfe.
schaut euch bitte folgenden beispielhaften Code an:
Sub Leerzeichen_löschen()
Dim strZ$
strZ = " Eins zwei drei vier fünf "
strZ = Trim(strZ)
strZ = Replace(strZ, Mid(strZ, InStr(strZ, " "), InStrRev(strZ, " ") - InStr(strZ, " ") + 2), " . ")
End Sub
In meinem Beispielstring gibt es vor dem Wort eins und nach dem Wort fünf eine beliebige Anzahl von Leerzeichen. Die Anzahl der Leerzeichen zwischen den Wörtern drei und vier soll ebenfalls beliebig sein.
Die Aufgabe besteht nun darin die Leerzeichen am Satzanfang und Ende zu entfernen und zwischen den Wörter drei und vier den Punkt so zu setzen, wie ich dies in meinem funktionierenden Codebeispiel
gemacht habe.
Mir scheint meine Formel aber viel zu lang für eine so simple Aufgabe. Kann man das nicht effizienter erledigen?
Vielen Dank für eure Hilfe.