Proteger Libros de Excel:
Seleccione Proteger sobre libro activo y en el cuadro de diálogo Proteger libro, elija la casilla de verificación Estructura
*Si especifica una contraseña, esa contraseña será necesaria para desproteger el libro.
Esta protección no incluye protección sobre los módulos y macros VBA
Si el libro de trabajo está protegido, el usuario no podrá:
-Ocultar hojas
-Añadir hojas
-Cambiar el nombre de una hoja
-Eliminar hoja
-Mover una hoja
Proteger Libros de Excel - VBA proyecto:
Si desea proteger el código VBA debe seleccionar el proyecto VBA del libro y asignar una clave.
Los libros que soportan proyectos VBA son los siguientes
.XLA .XLAM (complementos – libros cn propiedad visible Falso)
.XLS (libro en formato compatible con versiones anteriores a Excel 2007)
.XLSM (libro habilitado para macros valido desde Excel 2007 en adelante)
*Si llegara a guardar código VBA en un libro que no soporte el proyecto VBA el código se eliminara o no estará disponible una vez guardado el libro de Excel.
*A partir de Excel 2007 los libros comparten una estructura de zipeado
Es decir se puede cambiar la extensión de un archivo .xlsm con imágenes y recuperar los objetos como shapes y charts desde un folder.
Como ocultar una hoja para la mayoría de usuarios (poco expertos)
Objeto Worksheet - expresión .Visible
Puede asignar una hoja como "muy oculta". Esto evitará que el usuario vea la hoja.
Use VBA para lograrlo:
Una hoja "muy oculta" no aparecerá en la lista de hojas.
Para volverla muy oculta:
Worksheets("Hoja1"). Visible = xlVeryHidden
Para volverla visible luego:
Worksheets("Sheet1").Visible = true
Hacer visibles todas las hojas:
Dim sht
For Each sh In Sheets
sh.Visible = True
Next sh