suche ein makro das mir in Tabelle1 Spalte B1 bis ca. B30000 (variabel) alle 3stelligen zahlen löscht.
Also nur den Wert löschen der Rest muß bleiben.
Mit freundlichen Grüßen
Manfred

| B | C | |
| 1 | 63 | stehen lassen |
| 2 | 357 | |
| 3 | 387 | |
| 4 | 26 | stehen lassen |
| 5 | 340 | |
| 6 | 136 | |
| 7 | 144 | |
| 8 | 27 | stehen lassen |
| 9 | 347 | |
| 10 | 4435646 | stehen lassen |
| 11 | 364 | |
| 12 | 165 | |
| 13 | 45 | stehen lassen |
| 14 | 168 | |
| 15 | 365 | |
| 16 | 364 | |
| 17 | 140 | |
| 18 | 20 | stehen lassen |
| 19 | 134 | |
| 20 | 164 |
| B | C | |
| 1 | 63 | stehen lassen |
| 2 | ||
| 3 | ||
| 4 | 26 | stehen lassen |
| 5 | ||
| 6 | ||
| 7 | ||
| 8 | 27 | stehen lassen |
| 9 | ||
| 10 | 4435646 | stehen lassen |
| 11 | ||
| 12 | ||
| 13 | 45 | stehen lassen |
| 14 | ||
| 15 | ||
| 16 | ||
| 17 | ||
| 18 | 20 | stehen lassen |

Option Explicit
Sub NurWert()
Dim x&, Time1 As Date, Time2 As Date
Time1 = Now
Application.ScreenUpdating = False
For x = 1 To 30000
If Len(Cells(x, 2)) = 3 And IsNumeric(Cells(x, 2)) Then
Cells(x, 2).ClearContents
End If
Next
Time2 = Now
Application.ScreenUpdating = True
MsgBox Time2 - Time1
End Sub

Also nur den Wert löschen der Rest muß bleiben.
Sub ttt()
Dim rngC As Range, rngDel As Range
Application.ScreenUpdating = False
For Each rngC In Columns(2).SpecialCells(xlCellTypeConstants, xlNumbers)
Select Case rngC
Case 100 To 999
If rngDel Is Nothing Then
Set rngDel = rngC
Else
Set rngDel = Union(rngDel, rngC)
End If
End Select
Next
If Not rngDel Is Nothing Then rngDel.ClearContents
End Sub
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen