something like
Public Sub RemoveInvalidListEntries()
'#
'# declare private variables
'#
Dim lngListRow As Long
Dim lngTargetRow As Long
'#
'# for the active worksheet
'#
With ActiveSheet
'#
'# list 1: remove invalid entries
'#
lngTargetRow = 1
For lngListRow = 2 To .Cells(.Rows.Count, "B").End(xlUp).Row
If Val(.Cells(lngListRow, "B").Value) >= 11 Then
lngTargetRow = lngTargetRow + 1
If lngTargetRow <> lngListRow Then
.Cells(lngTargetRow, "A").Value = .Cells(lngListRow, "A").Value
.Cells(lngTargetRow, "B").Value = .Cells(lngListRow, "B").Value
End If
Else
.Cells(lngListRow, "A").Value = vbNullString
.Cells(lngListRow, "B").Value = vbNullString
End If
Next lngListRow
'#
'# list 2: remove invalid entries
'#
lngTargetRow = 1
For lngListRow = 2 To .Cells(.Rows.Count, "D").End(xlUp).Row
If Val(.Cells(lngListRow, "D").Value) >= 31 Then
lngTargetRow = lngTargetRow + 1
If lngTargetRow <> lngListRow Then
.Cells(lngTargetRow, "C").Value = .Cells(lngListRow, "C").Value
.Cells(lngTargetRow, "D").Value = .Cells(lngListRow, "D").Value
End If
Else
.Cells(lngListRow, "C").Value = vbNullString
.Cells(lngListRow, "D").Value = vbNullString
End If
Next lngListRow
'#
'# list 3: remove invalid entries
'#
lngTargetRow = 1
For lngListRow = 2 To .Cells(.Rows.Count, "F").End(xlUp).Row
If Val(.Cells(lngListRow, "F").Value) >= 11 Then
lngTargetRow = lngTargetRow + 1
If lngTargetRow <> lngListRow Then
.Cells(lngTargetRow, "E").Value = .Cells(lngListRow, "E").Value
.Cells(lngTargetRow, "F").Value = .Cells(lngListRow, "F").Value
End If
Else
.Cells(lngListRow, "E").Value = vbNullString
.Cells(lngListRow, "F").Value = vbNullString
End If
Next lngListRow
End With
End Sub
Bookmarks