** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Otros de Microsoft: Windows y Office > Excel
  Mensajes nuevos Mensajes nuevos RSS - Macro para desproteger y proteger una hoja
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoMacro para desproteger y proteger una hoja

 Responder Responder
Autor
Mensaje
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Tema: Macro para desproteger y proteger una hoja
    Enviado: 16/Marzo/2017 a las 23:41
Hola, nuevamente tengo una inquietud, que estoy seguro ustedes me ayudarán a resolver.

Quisiera construir una macro, con la cual pueda proteger o des proteger una hoja y que contenga una clave.

Pasa que un cliente me pide que las hojas estén protegidas y cuando voy a trabajar, pierdo mucho tiempo protegiendo y desprotegiendo las hojas.

Digamos, si la clave es 12345. Quisiera que la clave esté dentro de la macro para que, al solicitar proteger o desproteger la hoja, el programa tome esa clave.

Gracias
Arriba
AnSanVal Ver desplegable
Administrador
Administrador
Avatar

Unido: 16/Marzo/2005
Localización: España
Estado: Sin conexión
Puntos: 4913
Enlace directo a este mensaje Enviado: 17/Marzo/2017 a las 01:44

' ...

Worksheets("Hoja1").Unprotect Password:="12345"

' ...

Worksheets("Hoja1").Protect Password:="12345"

' ...

Pregunta lo que no sabes, recuérdalo para cuando te pregunten y ofrece tu ayuda (reconforta).

Mi sitio_web con ejemplos Excel.
Arriba
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Enviado: 17/Marzo/2017 a las 15:35
Hola AnSanVal
Muchas gracias por tu respuesta, ya la probé y funciona muy bien.

Tengo otra consulta, con este mismo tema.

Como podría construir algo asi:
If  Worksheets("Hoja1")  is protected    Then
Worksheets("Hoja1").Unprotect Password:="12345" 
Else
Worksheets("Hoja1").Protect Password:="12345"
End If

Lo otro que deseo saber es
If  ActiveSheet = Worksheets("Hoja1")

Ya lo intenté y me dio error

Gracias

Arriba
xavi Ver desplegable
Administrador
Administrador
Avatar
Terrassa-BCN

Unido: 10/Mayo/2005
Localización: Catalunya
Estado: en línea
Puntos: 11288
Enlace directo a este mensaje Enviado: 17/Marzo/2017 a las 19:25
If ActiveSheet.Name = "Hoja1" Then ....
Xavi, un minyó de Terrassa

Mi web
Arriba
Gladiador Ver desplegable
Habitual
Habitual
Avatar

Unido: 22/Junio/2006
Localización: Venezuela
Estado: Sin conexión
Puntos: 87
Enlace directo a este mensaje Enviado: 18/Marzo/2017 a las 02:43
Gracias Xavi. Muy bueno tu punto.
Ya resoví como preguntar si la hoja está protegida, con el comando
If ActiveSheet.ProtectContents = True Then

Gracias a todos.
Sepuede cerrar el Hilo.

Quiero advertir que, en mi caso, una solución me lleva a múltiples preguntas e incógnitas, pero no quiero recargarlos y dejar espacio para otros.

Gladiador
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable