Ayuda con macro eliminar toda la fila al encontrar una palabra en el texto de la celda

Los datos los tengo en la columna H

Me gustaría que a partir del rango H7 hacia abajo (el rango final hacia abajo es variable) me busque en cada celda la palabra "cancelación de iva septiembre", y elimine toda la fila, mi problema es que la palabra cambia cada mes a "cancelación de iva octubre", " cancelación de iva noviembre", "iva cancelación nov13" etcétera, dependiendo del mes en curso o de quien capture los datos, entonces yo quisiera que al encontrar la palabra "cancelación" en el texto de la celda, sin importar lo que diga antes o después de esta palabra, elimine toda la fila.

Espero me puedan ayudar con el código para realizar esta función, .

Gracias de antemano.

1 Respuesta

Respuesta
1

Prueba con este código:

Option Explicit
Sub borrarCancelaciones()
Dim i As Long
Dim n As Long
n = 0
For i = Cells.SpecialCells(xlCellTypeLastCell).Row To 7 Step -1 ' Desde la última a la línea 7
If InStr(UCase$(Cells(i, 8)), "CANCELACIÓN") > 0 Then Rows(i).Delete: n = n + 1
Next i
MsgBox "Borradas " & n & " líneas"
End Sub

Una cosa importante es ir borrando desde el final hacia el principio (por eso el FOR va decrementando el valor de "i"). Ten en cuenta que si borras una línea, las que quedan detrás se renumeran y si fuésemos incrementando el contador dejaríamos de comprobar una línea cada vez que borrásemos algo.

Hola que tal.

Solo para agradecerte por tu ayuda, el código me sirvió a la perfección, era justo lo que necesitaba.

Muchas Gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas