Trim festes Leerzeichen

27/08/2007 - 17:21 von Frank Spade | Report spam
Guten Tag,

in dem folgenden Beispiel entfernt RTrim nicht ein festes Leerzeichen am
Ende (z.B. "Müller "). Wird ein festes Leerzeichen (String(160),
Strg-Alt-Leer) von Trim
nicht als Leerzeichen erkannt? Wie kann ich dann ein festes Leerzeichen
entfernen?

Klient = ActiveDocument.Bookmarks("KLIENT").Range
Klient = RTrim(Klient)

Herzlichen Gruß

Frank
 

Lesen sie die antworten

#1 Thomas Gahler
27/08/2007 - 18:11 | Warnen spam
Hallo Frank


in dem folgenden Beispiel entfernt RTrim nicht ein festes Leerzeichen am
Ende (z.B. "Müller "). Wird ein festes Leerzeichen (String(160),
Strg-Alt-Leer) von Trim nicht als Leerzeichen erkannt?

Wie kann ich dann ein festes Leerzeichen
entfernen?


Nur mit einer eigenen Funktion, die mehr als kann als das Original


' -- -- -- -- --
Option Explicit

Enum ETrimVerarbeitung
eRightTrim = 1
eLeftTrim = 2
eTrim = 3
End Enum

Public Function funcTrim( _
ByVal strText As String, _
ByVal intVerarbeitung As ETrimVerarbeitung) _
As String

Dim SPACE_32 As String
Dim SPACE_160 As String

SPACE_32 = Chr$(32)
SPACE_160 = Chr$(160)

'Links trimmen
If intVerarbeitung = eLeftTrim Or _
intVerarbeitung = eTrim Then

While Mid$(strText, 1, 1) = SPACE_32 Or _
Mid$(strText, 1, 1) = SPACE_160

strText = Mid$(strText, 2)
Wend
End If

'Rechts trimmen
If intVerarbeitung = eRightTrim Or _
intVerarbeitung = eTrim Then

While Mid$(strText, Len(strText), 1) = SPACE_32 Or _
Mid$(strText, Len(strText), 1) = SPACE_160

strText = Mid$(strText, 1, Len(strText) - 1)
Wend
End If

'Rückgabewert
funcTrim = strText
End Function


Sub Demo()
Debug.Print funcTrim(Selection.Range.Text, eTrim)
Debug.Print funcTrim(Selection.Range.Text, eLeftTrim)
End Sub
' -- -- -- -- --

Thomas Gahler
MVP für WordVBA
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)


- Windows XP (SP2), Office XP (SP3)

Ähnliche fragen