AW: Zellen löschen mit Zeichenanzahl kleiner als
23.10.2017 12:52:09
UweD
Hallo so?
- Ein Autofilter wird gesetzt für ZAHLEN kleine 10.000.000 (8 Stellen)
- Wenn Zeilen vorhanden sind, werden die gelöscht
- Sonst erfolgt eine Meldung
- Autofilter wird zurückgesetzt
Private Sub TT()
On Error GoTo Fehler
Dim TB As Worksheet, SP As Integer, EZ As Integer, LR As Double, Anz As Integer
'*** Stammdaten Anfang
Set TB = Sheets("Tabelle1")
SP = 3 'Spalte C
EZ = 2 'ab Zeile.. wegen Überschrift
'*** Stammdaten Ende
If TB.AutoFilterMode Then TB.AutoFilterMode = False ' Autofilter ausschalten
LR = TB.Cells(TB.Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
Anz = InputBox("Anzahl Zeichen?", "Löschen", 8)
TB.Cells(EZ - 1, SP).Resize(LR).AutoFilter Field:=1, Criteria1:="<" & 10 ^ (Anz - 1) _
, Operator:=xlAnd
If WorksheetFunction.CountIf(Columns(SP), "<" & 10 ^ (Anz - 1)) > 1 Then
TB.Rows(EZ).Resize(LR).Delete Shift:=xlUp
Else
MsgBox "Keine Werte vorhanden"
End If
TB.AutoFilterMode = False ' Autofilter ausschalten
'*** Fehlerbehandlung
Err.Clear
Fehler:
Application.EnableEvents = True
If Err.Number <> 0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
End Sub
LG UweD