Eliminar fila completa cuando en la celda columna A encuentre los valores "0"

En la fila A tengo una lista de nombre pero entre medio de ellos aparecen valores "" necesito una macro que elimine esas celdas y arrastre hacia arriba los otros nombres

Como en la siguiente foto

Respuesta
4

Existen varias maneras de eliminar registros con una condición.

Te muestro, desde mi punto de vista, las más efectivas y rápidas, ya que eliminan todos los registros en un solo paso, ya que eliminar fila por fila es un proceso muy lento.

1)

Sub Macro1()
'Por Dante Amor
  With ActiveSheet
    .Range("A1").AutoFilter Field:=1, Criteria1:="0"
    .AutoFilter.Range.Offset(1).EntireRow.Delete
    .ShowAllData
  End With
End Sub

2)

Sub Macro2()
'Por Dante Amor
  Dim lr As Long, i As Long, a As Variant, r As Range
  Application.ScreenUpdating = False
  lr = Range("A" & Rows.Count).End(xlUp).Row
  Set r = Range("A" & lr + 1)  'establece la siguiente fila a la última fila con datos
  a = Range("A1:A" & lr)
  For i = 1 To UBound(a)
    If a(i, 1) = "0" Then Set r = Union(r, Range("A" & i))
  Next i
  r.EntireRow.Delete
  Application.ScreenUpdating = True
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas