[Eine Seite zurück] [Übersicht] [Eine Seite vor]

Benutzung auf eigene Gefahr !
Keine Garantie für garnichts !

Mehrfache Leerzeichen durch eines ersetzen

Sprache / Programm: VBA ab Office 95
Beschreibung

Die Funktion ersetzt mehrfache Leerzeichen in einem String durch ein einzelnes Leerzeichen. Leerzeichen am Anfang und am Ende werden ganz entfernt

VBA-Quelltext
Public Function LeerRed(Zeichen) As String
    Dim Pos As Integer
    If IsNull(Zeichen) Then Exit Function
    Zeichen = Trim(Zeichen)
    Pos = InStr(1, Zeichen, "  ") ' 2 Leerzeichen !!
    While Pos <> 0
        Zeichen = Left(Zeichen, Pos) & Mid(Zeichen, Pos + 2)
        Pos = InStr(Pos, Zeichen, "  ")
    Wend
    LeerRed = Zeichen
End Function

''' Office  2000
Public Function LeerRed(Zeichen) As String
    If IsNull(Zeichen) Then Exit Function
    LeerRed = Trim(Zeichen)
    While InStr(1, LeerRed, "  ") > 0 ' 2 × Leerzeichen
        LeerRed = Replace(LeerRed, "  ", " ") ' 2 × Leer, 1 × Leer
    Wend
End Function
Argumente der Funktion/Prozedur

Zeichen

Zeichenkette mit überflüssigen Leerzeichen
Verwendete Variable

Pos

Zähler für Zeichen
Rückgabewert

Der bearbeitete String wird zurückgegeben.

Anwendungsbeispiel(e)...

LeerRed("  Kraut    und  Rüben    ")

ergibt

"Kraut und Rüben"

Hinweis

In Access 2000 kann das Programm mit Hilfe der Funktion 'Replace' ersetzt werden, aber auch hier sind mehrere Durchläufe erforderlich, da bei jedem Durchgang die Zahl der Leerzeichen halbiert wird.