Macro - Proteger

30/11/2008 - 03:56 por Favio | Informe spam
Hola!

Necesito saber como hacer una macro en la que pueda proteger todas las hojas
de un libro mediante una password y que la clave figure en el código VBA.
El objetivo es impedir que se vean en las celdas que funciones se están
usando pero a la vez que otro usuario pueda cambiar los valores. Por ejemplo
si en la celda dice 60, que pueda cambiarlo por otro valor.
He probado de hacerlo, pero cuando voy a proteger hoja por más que tenga una
password lo mismo la desactiva.
Gracias.
 

Leer las respuestas

#1 osjapiro
28/06/2011 - 23:43 | Informe spam
Favio escribió el 30/11/2008 03:56 :
Hola!

Necesito saber como hacer una macro en la que pueda proteger todas las hojas
de un libro mediante una password y que la clave figure en el código
VBA.
El objetivo es impedir que se vean en las celdas que funciones se están
usando pero a la vez que otro usuario pueda cambiar los valores. Por ejemplo
si en la celda dice 60, que pueda cambiarlo por otro valor.
He probado de hacerlo, pero cuando voy a proteger hoja por más que tenga
una
password lo mismo la desactiva.
Gracias.


hola prueba con esta macro

Sub protect_all()
For Each sheet In ActiveWorkbook.Sheets
sheet.Protect Password:="ESCRIBE_AQUI_EL_PASS"
Next sheet
End Sub

Si la anterior no llena tus expectativas aqui te dejo otra:


Sub Proteger()

' Loop through all sheets in the workbook
For i = 1 To Sheets.Count

' Activate each sheet in turn.
Sheets(i).Activate

response = MsgBox("Desea proteger la hoja?", vbYesNo)
If response = vbYes Then
ActiveSheet.Protect Password:="AQUI_ESCRIBES_EL_PASS", DrawingObjects:=False, _
Contents:=True, Scenarios:=False

ElseIf response = vbNo Then
MsgBox ("Hoja no protegida")

End If
Next i
End Sub

En esta macro te saldra un cuadro de dialogo y puedes escoger si deseas proteger la hoja o no, si eliges "no" la hoja no se protege (aparece un mensaje "hoja no protegida") y pasa la siguiente, lo mismo pasa si eliges protegerla.

Preguntas similares