Macro para eliminar filas que no cumplan una condición

Necesito eliminar todas las filas que no sean iguales a "CLIMA".

Los datos se encuentran en la Hoja "Base" en la columna "V".

Considerar que el archivo tiene un aproximado de 40 mil filas.

1 Respuesta

Respuesta
1

Te anexo una macro, la probé con 40 mil y tarda 3 minutos

Sub QuitaFilas()
'Act Por Dante Amor
    Dim u As Double, i As Double, j As Double
    Dim r As Range, a
    Dim h As Object
    Application.ScreenUpdating = False
    Application.StatusBar = False
    Set h = Sheets("Base")
    u = h.Range("V" & Rows.Count).End(xlUp).Row
    a = Range("V1:V" & u)
    '
    For i = 1 To UBound(a)
        If a(i, 1) <> "CLIMA" Then
            Set r = h.Range("V" & i)
            j = i
            Exit For
        End If
    Next
    For i = j To u
        Application.StatusBar = "Leyendo registro " & i
        If a(i, 1) <> "CLIMA" Then
            Set r = Union(r, h.Range("V" & i))
        End If
    Next i
    r.EntireRow.Delete
    Set r = Nothing
    Application.StatusBar = False
    Application.ScreenUpdating = True
End Sub

Otra opción, es que filtres la hoja por "CLIMA" y los registros encontrados los copies a otra hoja.

Entonces en la otra hoja tendrás la base depurada.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas