Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
936to940
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Leerzeichen innhalb des Textes löschen

Leerzeichen innhalb des Textes löschen
04.01.2008 11:50:00
Bernd

Hi Freaks,
ich habe nachstehenden code von Erich und Sepp erhalten, der auch funktioniert, aber nur, wenn ich (wie damals gewollt) die ersten 60 Zeichen eines Textes löschen will. Mein Versuch über die Excel-VBA-Hilfe hat mich zwar zu "RTrim" geführt , aber ich habe es nicht umsetzen können...
Meine Bitte an Euch:
Wie muss ich den Code modifizieren, wenn ich bis auf 1 Leerzeichen die übrigen aus dem folgenden Originaltext "Berichtsperiode: 3 / 2008" in Spalte C eliminieren will?

Sub erste60wegUndLeerzeichenWeg()   'Spalte V
'von Sepp & Erich
Dim a As Variant
Dim lngI As Long
a = Range("c4:c288")
For lngI = 1 To UBound(a, 1)
a(lngI, 1) = WorksheetFunction.Trim(Mid(a(lngI, 1), 60))
Next
Range("c4:c288") = a
End Sub


Grüße und Danke vorab
Bernd

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leerzeichen innhalb des Textes löschen
04.01.2008 12:26:00
fcs
Hallo Bernd,
ganz genau kenne ich dein gewünschtes Endergebnis nach deiner Frage nicht.
Folgender Code entfernt alle Leerzeichen am Anfang und Ende (Trim), ersetzt alle Mehrfach-Leerzeichen durch ein einzelnes Leezeichen und anschließend noch " / " durch "/".
Musste halt anpassen.
Falls die Leerzeichen nur in bestimmten Teilen des Textes ersetzt werden sollen, dann muss man den Text teilen, die Ersetzungen durchführen und den text wieder zusammenfügen.
Gruß
Franz

Sub DoppelteLeerzeichenWeg()
Dim Zelle As Range, wks As Worksheet, Spalte As Integer
Set wks = ActiveSheet
Spalte = 3 'Spalte C
With wks
For Each Zelle In .Range(.Cells(1, Spalte), .Cells(.Rows.Count, Spalte).End(xlUp))
Do Until InStr(1, Zelle.Value, "  ") = 0
Zelle.Value = Trim(Replace(Zelle.Value, "  ", " "))
Loop
Zelle.Value = Trim(Replace(Zelle.Value, " / ", "/"))
Next
End With
End Sub


Anzeige
@ Franz - vielen Dank.
04.01.2008 14:37:00
Bernd
Hallo Franz
das ist genau das, was ich gesucht habe.
Vielen Dank dafür.
Grüße
Bernd

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige