AW: nur Großbuchstaben und Zahlen
18.04.2025 16:34:46
Christian
Hallo Piet,
ich habe das Makro etwas angepasst, damit es auch wirklich den Gegebenheiten entspricht, wie ich die Formeln getestet habe, 5,81 Sekunden. Allerdings hattest du die Anfrage glaube ich in einem Punkt falsch verstanden. Zahlen sollen nicht gelöscht werden.
Sub Zeichen_löschen()
Dim startTime As Double
Dim endTime As Double
Dim j As Integer
Dim i As Long
Dim tempText As String
Dim duration As Double
startTime = Timer ' Startzeit
' Genau die Zeilen 1 bis 85494 durchgehen
For i = 1 To 85494
tempText = Cells(i, 1).Value
' Zeichen 33 bis 64 entfernen
For j = 33 To 64
tempText = Replace(tempText, Chr(j), "")
Next j
' Zeichen 91 bis 128 entfernen
For j = 91 To 128
tempText = Replace(tempText, Chr(j), "")
Next j
' Ergebnis in Spalte F schreiben (Spalte 6)
Cells(i, 6).Value = tempText
Next i
endTime = Timer
duration = endTime - startTime
MsgBox "Makro abgeschlossen in " & Format(duration, "0.00") & " Sekunden.", vbInformation
End Sub
Dein Makro so wie du es geschrieben hast, sagt exakt 3 Sekunden, aber es gibt halt auch keine Ausgabe in Spalte F.
Sub Zeichen_löschen()
Dim startTime As Double
Dim endTime As Double
Dim j As Integer
startTime = Timer ' Startzeit
' Lösche Charakterzeichen + Zahlen (s. Anfrage)
For j = 33 To 64
Columns(1).Replace Chr(j), "", xlPart
Next j
' Lösche Kleinbuchstaben und [] Zeichen
For j = 91 To 128
Columns(1).Replace Chr(j), "", xlPart
Next j
endTime = Timer ' Endzeit
MsgBox "Makro fertig. Dauer: " & Format(endTime - startTime, "0.00") & " Sekunden.", vbInformation
End Sub