Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Proteger todas las hojas con Macros

| 2 comentarios

Se procederá a crear una macro que proteja todas nuestras hojas activas dentro de un mismo libro de excel.
Como bien sabemos, podemos irnos de frente a la ficha "Revisar", en la sección "Cambios" ir a "Proteger Hoja" con lo que le asignaremos una contraseña de seguridad pero sólo a la hoja en la que estemos en ese momento (Hoja1), las demás hojas (Hoja2, Hoja3...) no contarán con esta contraseña de seguridad, es por eso que podemos diseñar una macro que a través de una estructura de ciclos repetitivos finitos nos asigne una misma contraseña para proteger todas las hojas.

El primer caso, en el que se protege una sola hoja se ve a continuación:

1° Creamos un botón "Proteger Hojas" a través de la ficha "Programador"

Botón 1

2° Grabamos una macro "Protección" y aplicamos los pasos descritos en la parte superior, asignamos la contraseña "seguridad" para esta hoja activa. Usaremos la abreviación Ctrl+p para ejecutar la macro. Se generará el siguiente código:

Sub Protección()
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

3° Notamos que la contraseña que pusimos a la hora de grabar la macro, no aparece. Habrá que introducirla con el código apropiado: ActiveSheet. Protect Password:="seguridad", con lo que nos quedaria:

Sub Protección()
ActiveSheet.Protect Password:="seguridad"
End Sub

y esta macro modificada, será la que asignemos al botón "Proteger Hojas",  por lo que al ejecutar la macro a través del botón la hoja en donde estemos quedará protegida con la contraseña "seguridad".

4° El siguiente paso es hacer lo mismo pero para todas las hojas de nuestro libro activo, para lo que introduciremos una estructura iterativa.

Sub Protección()
For Each Worksheet In ActiveWorkbook.Worksheets
Worksheet.Protect Password:="seguridad"
Next Worksheet
End Sub

Ahora al hacer clic en el botón, este protegerá todas las hojas con la macro creada "Proteger Hojas" y podremos verificarlo al cambiar de hoja y ver que emerge una ventana impidiendo realizar un cambio.

Por: José Luis Morales Guevara

2 comentarios

  1. MUY BUENO

  2. Gracias!

Deja una respuesta

Los campos requeridos estan marcados con *.