Borrar filas ocultas o de alto muy pequeño en Excel VBA

En una de mis hojas de Excel algunas filas están ocultas y otras tiene un alto muy pequeño ( > 1) no se si me podrían con un código que cuando que recorra todas las filas y si estas están ocultas o son muy pequeñas por el alto entonces que las elimine, alguna ayuda expertos.

Respuesta
1

[Hola

No es tan complicado en realidad:

Sub EliminarFilas()
Dim UltimaFila As Long, x As Long
Application.ScreenUpdating = False
Let UltimaFila = Cells(Rows.Count, 1).End(xlUp).Row
For x = UltimaFila To 1 Step -1
    If Range("A" & x).EntireRow.Hidden = True Or Range("A" & x).RowHeight <= 1 Then
        Range("A" & x).EntireRow.Delete Shift:=xlUp
    End If
Next x
Application.ScreenUpdating = True
End Sub

Saludos]

Abraham Valencia

Muchísimas gracias .. Una consulta cuando debp usar Let y cuando Set para definir variables muy agradecido de su ayuda.

Let se usa para variables a las que uno les va a dar un valor numérico o de texto, aunque se puede obviar:

Let Variable = "Abraham"

Es lo mismo que:

Variable = "Abraham"

o

nVariable = 56

o

Let nVariable = 56

Esas variables las usas para dar valor basicamente.

En el caso de Set, se usa para objetos (un número o una palabra no es un objeto para VBA). Por ejemplo una hoja es un objeto, un rango de celdas es un objeto, etc.

Set MiHoja = Sheets("Hoja345")

Set MiCeldas = Range("A45:Y78")

Con esas variables de objetos se puede trabajar como si fuesen los propios objetos:

Misceldas.Value = "Hola"

Y eso último hará que en todo el rango "A45:Y78" aparezca "Hola" en las celdas.

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas