Ocultar todas las hojas al cerrar un libro y al abrirlo, mostrarlas

Hola, estoy intentando que dentro de la orden BeforeClose se oculten todas las hojas menos una, y luego al abir el libro, que se muestren todas las hojas, el problema es que el libro está protegido para impedir que se le eliminen las hojas accidentalmente. La macro es la siguiente:

Sub ocultar()
For Each hoja In Worksheets
If hoja.Name <> "Hoja1" Then _
ActiveWorkbook.Unprotect "XXX"
hoja.Visible = xlSheetVeryHidden
Next
End Sub
Sub Mostrar_Hojas()
Application.ScreenUpdating = False
For Each N In Sheets
N.Visible = True
Next N
Application.ScreenUpdating = True
ActiveWorkbook.Protect "XXX"
End Sub

No sé porque al ejecutarlas, me genera error, alguien me puede ayudar?.

Gracias de antemano.

1 respuesta

Respuesta
1

No indicas en qué línea te marca error, pero leyendo el código veo que desproteges 'el libro' en cada paso del bucle Ocultar... debieras dejarlo al inicio así como dejas la protección al final en Mostrar.

Es decir, desproteger antes del For y proteger luego del Next en las 2 macros.

Comentame si esto resolvió tu problema,

Sdos

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas