En los siguientes ejemplos veremos como por medio de la propiedad "Hidden" podremos ocultar filas usando VBA, de similar forma también podríamos proceder a ocultar columnas dentro de la hoja
Ejemplos para mostrar u ocultar filas
Ejemplo 1
En ese sentido podemos ver un simple ejemplo en la hoja 2 en que a través del botón "empezar" se ejecutar la siguiente macro:
Sub ocultarmostrar()
Rows("5:8").EntireRow.Hidden = True
Rows("5:5").EntireRow.Hidden = False
End Sub
En esta macro primero se procede a ocultar las filas 5, 6, 7 y 8, esto es posible al definir la propiedad Hidden con el valor true.
De forma opuesta al colocar Hidden como false estamos logrando que se muestre la fila 5 en la segunda línea de la macro.
Ejemplo 2
Asimismo en la hoja3 podemos ver se puede ocultar las filas del cuadro a través de los botones macro 1 y macro 2 podemos ocultarlos y devolver a que se observen.
Sub Macro1()
Rows("4:6").Select
If Selection.EntireRow.Hidden = True Then
Selection.EntireRow.Hidden = False
Else
Selection.EntireRow.Hidden = True
End If
End Sub
Por medio de la Macro1 si el contenido se encuentra oculto pasa a ser mostrado, caso contrario (si esta visible) se pasa a ocultar lo seleccionado.
La segunda macro funciona de forma similar sobre un conjunto distinto de filas.
Ocultar filas por condiciones
En la siguiente macro se procede a ocultar solo las filas en las que la columna F tiene el valor "independiente":
Private Sub CommandButton1_Click()
For a = 2 To 13
If Worksheets("Hoja3").Cells(a, 6).Value = "INDEPENDIENTE" Then
Worksheets("Hoja3").Rows(a).Hidden = True
End If
Next
End Sub
Descargar ejemplo para mostrar u ocultar filas en VBA: Mostrar u ocultar filas con Macros
01/03/2020 a las 2:19 am
Buen día, estoy trabajando en un pproyecto pero mis limitados conocimientos me impiden avanzar, ojala y puedas apoyarme, yo necesito que se me oculte toda la fila 10 cuando el valor de 2 celdas de esa misma fila sea 0, es decir:
Cuando D10=0 y J10=0 debe ocultarme toda la fila
Si D10=0 y J10=1 (o Viceversa) entonces no me oculta la fila..
Mil gracias.
10/07/2020 a las 6:56 am
Buenas tardes José Luis,
Yo creo que se resolvería así:
if Cells(10,4).Value =0 and Cells(10,10).Value =0 Then
Rows(10).Hidden = True
Else
Rows(10).Hidden = False
End if
14/08/2020 a las 9:08 am
Cómo mostrar filas ocultas, por el método tradicional no se puede gracias
16/06/2021 a las 3:50 am
Muchas gracias...
Me sirvió el ejemplo 2
21/10/2021 a las 3:20 pm
No se pueden ocultar filas y columnas que contengan listas?
01/04/2022 a las 2:18 pm
Buenas como se pone para que oculte las filas desde la celda A13 si el valor es menor que la celda B8 pongo esto pero no funciona
Sub ocultafila()
Range("A13").Select
Do While ActiveCell.Value ""
If ActiveCell.Value < Range("B8") Then
ActiveCell.EntireRow.Hidden = True
End If
ActiveCell.Offset(1, 0).Select
Loop
End Sub
Gracias