Verificar los valores antes de filtrar
Tengo una base de datos con muchisima información, he realizado una macro que me limpia la base haciendo filtros y elimina los datos que no quiero que me analice. El problema sucede cuando ejecuto la macro y no encuentra alguno de los criterios, me borra todo el contenido de la base...
De paso pregunto si hay alguna forma de hacer que el codigo se ejecute mas rapido
Sub limpiabase()
miStop4 = Range("A1").CurrentRegion.Rows.Count
 ActiveSheet.Range(Cells(1, 1), Cells(miStop4, 34)).AutoFilter Field:=27, Criteria1:= _
 "caparros"
 Range(Cells(2, 1), Cells(miStop4, 34)).Select
 Selection.Delete Shift:=xlUp
 ActiveSheet.ShowAllData
 ActiveSheet.Range(Cells(1, 1), Cells(miStop4, 34)).AutoFilter Field:=22, Criteria1:= _
 "<>17 qtr3", Operator:=xlAnd
 Range(Cells(2, 1), Cells(miStop4, 34)).Select
 Selection.Delete Shift:=xlUp
 ActiveSheet.ShowAllData
 ActiveSheet.Range(Cells(1, 1), Cells(miStop4, 34)).AutoFilter Field:=7, Criteria1:="<>New" _
 , Operator:=xlAnd, Criteria2:="<>Renewal"
 Range(Cells(2, 1), Cells(miStop4, 34)).Select
 Selection.Delete Shift:=xlUp
 ActiveSheet.ShowAllData
ActiveSheet.Range(Cells(1, 1), Cells(miStop4, 34)).AutoFilter Field:=8, Criteria1:="Administrative"
 Range(Cells(2, 1), Cells(miStop4, 34)).Select
 Selection.Delete Shift:=xlUp
 ActiveSheet.ShowAllData
End Sub


