Macro de excel para ocultar o mostrar filas con botón

Debo hacer que una macro para ocultar filas con el símbolo ! Se oculten. Hasta aquí es fácil con esta macro me funciona:

Sub ocultar_filas()
Dim rango As Range
For Each rango In ActiveSheet.Range("A1:A100")
If rango = "!" Then
rango.EntireRow.Hidden = True
End If
Next
End Sub

Yo lo que quiero es asignar la macro a un botón de opción de control de formulario y que cuando esté deseleccionado mantenga las filas ocultas, y cuando esté seleccionado las muestre. Los botones están en una hoja (datos) y las filas a ocultar en la página OFERTA dentro del mismo libro.

De esta manera al abrir el libro todas las filas estarán ocultas en la página oferta y a medida que en la página datos vas seleccionando opciones, va mostrándolas en la página oferta.

Estero haberme explicado con claridad.

Respuesta
2

Pon el siguiente código, tu botón de opción debe ser de control activex, deberá llamarse optionbutton1, deberás tener otro control optionbutton para que puedas deseleccionarlo, si no tienes 2 o más optionbutton, entonces lo mejor sería que pusieras un checkbox.

Private Sub OptionButton1_Change()
'Por.Dante Amor
    opcion = OptionButton1.Value
    If opcion Then opcion = False Else opcion = True
    ocultar_filas opcion
End Sub
Sub ocultar_filas(opcion)
'Act.Por.Dante Amor
    Dim rango As Range
    For Each rango In Sheets("ofertas").Range("A1:A100")
        If rango = "!" Then
            rango.EntireRow.Hidden = opcion
        End If
    Next
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas