Tipp 8.13 - Leerzeichen entfernen
Wie kann ich aus einem String die überflüssigen Leerzeichen entfernen?
Mit der InStr-Funktion in Kombination mit der Replace-Funktion können Sie relativ einfach doppelte Leerzeichen in einem String aufspüren und durch ein einzelnes Leerzeichen ersetzen. Eingebettet in eine Schleife wird das Ganze so lange wiederholt, bis kein doppeltes Leerzeichen mehr gefunden wird. Als Rückgabe erhalten Sie einen bereinigten Text. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.
Beispiel:
' String-Manipulation Public Function DelSpaces(ByVal psText As String) As String '// ===================================================== '// Methode | Löscht alle überflüssigen Leerzeichen '// ----------------------------------------------------- '// Parameter | psText - Zu überprüfender Text '// ----------------------------------------------------- '// Rückgabe | String - bereinigter Text '// ----------------------------------------------------- '// Erstellt | Stefan Kulpa '// | EDV Innovation & Consulting - Dormagen '// ----------------------------------------------------- '// Beispielaufruf: '// ?DelSpaces(" Hier steht eine Testzeile ") '// ===================================================== Const csLEER As String = " " Const csDOUBLE As String = " " Dim sTmp As String On Error GoTo DelSpaces_Error If Len(psText) > 0 Then sTmp = Trim$(psText) While InStr(1, sTmp, csDOUBLE) > 0 sTmp = Replace(sTmp, csDOUBLE, csLEER) Wend End If DelSpaces = sTmp DelSpaces_Exit: On Error GoTo 0 Exit Function DelSpaces_Error: MsgBox "Fehler " & Err.Number & ": " & _ Err.Description, vbCritical, _ "modTipps.DelSpaces" Resume DelSpaces_Exit End Function