Eliminar filas vacías con condición en un rango especifico

Necesito una macro para eliminar todas las filas que contengan un 0 en la columna U, pero en un rango especifico (A1:T9900).

Adjunto imagen de ejemplo.

1 Respuesta

Respuesta
3

¿Quieres eliminar toda la fila o solamente las celdas de la A a la T y que las filas celdas de abajo se recorran hacia arriba?

Te paso las 2 macros:

Sub EliminaFilas()
'Por Dante Amor
'
'eliminar toda la fila
'Asume que en la fila 1 están los encabezados
  Dim lr As Long
  With ActiveSheet
    If .AutoFilterMode Then ActiveSheet.AutoFilterMode = False
    lr = .Range("U" & Rows.Count).End(3).Row
    .Range("A1:U" & lr).AutoFilter Columns("U").Column, "0"
    .AutoFilter.Range.Offset(1).EntireRow.Delete
    .ShowAllData
  End With
End Sub

Sub EliminaCeldas()
'Por Dante Amor
'
'eliminar las celdas de la A a la T
'Asume que en la fila 1 están los encabezados
  Dim lr As Long, i As Long
  Dim a As Variant
  Dim r As Range
  '
  Application.ScreenUpdating = False
  If ActiveSheet.AutoFilterMode Then ActiveSheet.AutoFilterMode = False
  lr = Range("A" & Rows.Count).End(xlUp).Row
  Set r = Range("A" & lr + 1).Resize(1, 20)
  a = Range("A1:U" & lr)
  For i = 2 To UBound(a)
    If a(i, 21) = 0 Then Set r = Union(r, Range("A" & i).Resize(1, 20))
  Next i
  r.Delete Shift:=xlUp
  Application.ScreenUpdating = True
End Sub

Buenas tardes Maestro las 2 me sirven como siempre el mejor muchas gracias

Te invito a SUSCRIBIRTE a mi canal de YouTube:

Excel y Macros

Ahí encontrarás más sobre Excel y Macros:

Sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas