Protección de multiples hojas

27/12/2005 - 01:20 por Racso | Informe spam
Tengo un libro con 17 hojas y en cada pagina tengo iguales columnas que se
ocultan y se muestran con botones de mi barra de herramientas personalizada.
Cuando le doy protección a las hojas (que incluye una contraseña y
deshabilitación de'seleccionar celdas protegidas') mi boton-macro-mostrar
columnas me pide la contraseña (que es lógico) pero al ocultar las columnas
con mi boton-macro ocultarcolumnas se deshabilita la contarseña y se vuelve a
habilitar 'selección de celdas protegidas' aunque la hoja actual (celdas)
queda protegida.

Mis macros de ocultar y mostrar las columnas son :

Sub MostrarColumnasAreas()
ActiveSheet.Unprotect
Columns("E:AD").Select
Selection.EntireColumn.Hidden = False
ActiveCell.CurrentRegion.Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True _
, AllowFormattingColumns:=True
End Sub

Sub MostrarColumnasAreas()
ActiveSheet.Protect
Columns("E:AD").Select
Selection.EntireColumn.Hidden = False
ActiveCell.CurrentRegion.Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True _
, AllowFormattingColumns:=True
End Sub
Como puedo hacer mediante codigo en mis macros para que cada vez que uso mis
botones de ocultar o mostrar no se 'pierda' la contraseña y quede
deshabilitado 'seleccion de celdas protegidas' ?
 

Leer las respuestas

#1 KL
27/12/2005 - 01:56 | Informe spam
Hola Racso,

Tendras que incluir tu contrasena en el codigo.

Opcion 1: Tus macros modificadas.

'en un modulo estandar
Const clave = "abracadabra"

Sub MostrarColumnasAreas()
With ActiveSheet
.Unprotect clave
.Columns("E:AD").Hidden = False
.Protect clave, , , , False
End With
End Sub

Sub OcultarColumnasAreas()
With ActiveSheet
.Unprotect clave
.Columns("E:AD").Hidden = True
.Protect clave, , , , False
End With
End Sub
'en un modulo estandar

Opcion 2. Usando el evento Workbook_Open y el parametro UserInterfaceOnly del metodo Protect:

'en el modulo ThisWorkbook (EsteLibro)
Private Sub Workbook_Open()
Worksheets("Hoja3").Protect _
password:="abracadabra", _
UserInterfaceOnly:=True
End Sub
'en el modulo ThisWorkbook (EsteLibro)

'en un modulo estandar
Sub MostrarColumnasAreas()
ActiveSheet.Columns("E:AD").Hidden = False
End Sub

Sub OcultarColumnasAreas()
ActiveSheet.Columns("E:AD").Hidden = True
End Sub
'en un modulo estandar


Saludos,
KL


"Racso" wrote in message news:
Tengo un libro con 17 hojas y en cada pagina tengo iguales columnas que se
ocultan y se muestran con botones de mi barra de herramientas personalizada.
Cuando le doy protección a las hojas (que incluye una contraseña y
deshabilitación de'seleccionar celdas protegidas') mi boton-macro-mostrar
columnas me pide la contraseña (que es lógico) pero al ocultar las columnas
con mi boton-macro ocultarcolumnas se deshabilita la contarseña y se vuelve a
habilitar 'selección de celdas protegidas' aunque la hoja actual (celdas)
queda protegida.

Mis macros de ocultar y mostrar las columnas son :

Sub MostrarColumnasAreas()
ActiveSheet.Unprotect
Columns("E:AD").Select
Selection.EntireColumn.Hidden = False
ActiveCell.CurrentRegion.Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True _
, AllowFormattingColumns:=True
End Sub

Sub MostrarColumnasAreas()
ActiveSheet.Protect
Columns("E:AD").Select
Selection.EntireColumn.Hidden = False
ActiveCell.CurrentRegion.Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True _
, AllowFormattingColumns:=True
End Sub
Como puedo hacer mediante codigo en mis macros para que cada vez que uso mis
botones de ocultar o mostrar no se 'pierda' la contraseña y quede
deshabilitado 'seleccion de celdas protegidas' ?


Preguntas similares