Rutina eliminar fila según uno o varios criterios

Expertos:

Tengo la siguiente rutina que me permite eliminar filas dependiendo de una condición. El archivo contiene mas de 55 mil registros

Private Sub CommandButton2_Click()
Sheets("Repo Acum Visitas").Select
Do Until ActiveCell = ""
 While ActiveCell = "LIMA" And ActiveCell <> """"
 ActiveCell.EntireRow.Delete
 Wend
 ActiveCell.Offset(1, 0).Select
 Loop
End Sub

La rutina funciona ok pero es muy lento no se si por la cantidad de registros o porque busca el valor LIMA por toda la hoja cuando solo debe buscar en columna A y si la encuentra recién eliminar. Adiconalmente como puedo adaptar la misma rutina para poder eliminar filas con varios criterios?

Espero su gran ayuda.

Alberto Meza

1 Respuesta

Respuesta
1

La macro no revisa en toda la hoja, solamente revisa en la columna "A". Pero va seleccionando celda por celda y además tiene 2 ciclos

Do Until ActiveCell = ""

Y

While ActiveCell = "LIMA" And ActiveCell <> """"

Prueba con esta macro.

Private Sub CommandButton2_Click()
'Por.DAM
    For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
        If UCase(Cells(i, "A")) = "LIMA" Then Rows(i).Delete
    Next
End Sub

Para adaptar más criterios me tienes que decir con un ejemplo qué criterios necesitas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas