Deprotejer hoja con macro

23/12/2007 - 08:36 por novato | Informe spam
Tengo una macro protejida con la clave "1234", necesito desprotegerla para
escribir en ella, y volver a protegerla.
Cuando la intento desprotejer con "ActiveSheet.Unprotect" me sale error.
como le puedo meter la contraseña en la macro para desprotegerla?

Gracias por anticipado.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
23/12/2007 - 03:03 | Informe spam
hola, !

Tengo una macro protejida con la clave "1234", necesito desprotegerla para escribir en ella, y volver a protegerla.
Cuando la intento desprotejer con "ActiveSheet.Unprotect" me sale error.
como le puedo meter la contrasena en la macro para desprotegerla?



si necesitas que la proteccion NO afecte a tus macros SIN tener que (des/re)proteger la hoja
(asumiendo que la hoja ya esta protegida)... puedes usar la instruccion de "solo interfase de usuario"
te paso unos ejemplos al final del presente y...

si cualqueir duda (o informacion adicional)... comentas ?
saludos,
hector.

ejemplos protegiendo la hoja al abrirse el libro en el modulo ThisWorkbook...

a) en excel 97 y 2000 NO necesitas repetir el password, es suficiente con poner:
Private Sub Workbook_Open()
Worksheets("Hoja1").Protect UserInterfaceOnly:=True
End Sub

b) a partir de excel 2002 [xp] SI es requisito repetir el password
Private Sub Workbook_Open()
Worksheets("Hoja1").Protect _
PassWord:="la MISMA cOntRaSe#a qUe lE pUsISte", _
UserInterfaceOnly:=True
End Sub

c) si se trata de varias hojas (suponiendo una misma clave para todas)...
Private Sub Workbook_Open()
Dim Hoja As Worksheet
For Each Hoja In Worksheets(Array("hoja1", "hoja4", "hoja6"))
Hoja.Protect PassWord:="123", UserInterfaceOnly:=True
Next
End Sub

(practicamente) TODO lo que hagas por codigo... pasara sin problemas
(excepto ciertas cosillas relacionadas con ordenaciones, insertar filas/columnas, objetos incrustados y algunas mas)
Respuesta Responder a este mensaje
#2 crx73
24/12/2007 - 19:23 | Informe spam
On 22 dic, 20:03, "Héctor Miguel"
wrote:
hola, !

> Tengo una macro protejida con la clave "1234", necesito desprotegerla para escribir en ella, y volver a protegerla.
> Cuando la intento desprotejer con "ActiveSheet.Unprotect" me sale error.
> como le puedo meter la contrasena en la macro para desprotegerla?

si necesitas que la proteccion NO afecte a tus macros SIN tener que (des/re)proteger la hoja
(asumiendo que la hoja ya esta protegida)... puedes usar la instruccion de "solo interfase de usuario"
te paso unos ejemplos al final del presente y...

si cualqueir duda (o informacion adicional)... comentas ?
saludos,
hector.

ejemplos protegiendo la hoja al abrirse el libro en el modulo ThisWorkbook...

a) en excel 97 y 2000 NO necesitas repetir el password, es suficiente con poner:
Private Sub Workbook_Open()
  Worksheets("Hoja1").Protect UserInterfaceOnly:=True
End Sub

b) a partir de excel 2002 [xp] SI es requisito repetir el password
Private Sub Workbook_Open()
  Worksheets("Hoja1").Protect _
    PassWord:="la MISMA cOntRaSe#a qUe lE pUsISte", _
    UserInterfaceOnly:=True
End Sub

c) si se trata de varias hojas (suponiendo una misma clave para todas)...
Private Sub Workbook_Open()
  Dim Hoja As Worksheet
  For Each Hoja In Worksheets(Array("hoja1", "hoja4", "hoja6"))
    Hoja.Protect PassWord:="123", UserInterfaceOnly:=True
  Next
End Sub

(practicamente) TODO lo que hagas por codigo... pasara sin problemas
(excepto ciertas cosillas relacionadas con ordenaciones, insertar filas/columnas, objetos incrustados y algunas mas)



Disculpas por la pregunta, pero la opción UserInterfaceOnly qué efecto
tiene si se pone en True, False o se omite.

Gracias
Respuesta Responder a este mensaje
#3 Héctor Miguel
24/12/2007 - 19:43 | Informe spam
hola, (...) ???

... la opcion UserInterfaceOnly que efecto tiene si se pone en True, False o se omite...



si la omites, es lo mismo que establecerla como "False"
sus efectos son (segun la ayuda en linea {F1} de vba-excel):

UserInterfaceOnly: Variant opcional
True para proteger la interfaz del usuario, pero no las macros
Si este argumento se omite, la proteccion se aplicara tanto a las macros como a la interfaz del usuario

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida