Muchas veces nos vamos a ver obligados a dar permiso de escritura a determinados usuarios en una determina zona de la hoja de cálculo. Para esto tendremos que desproteger únicamente esa zona y mantener protegido el resto.
Un ejemplo de cómo resolver esto sería el siguiente:
VB
Private Sub CommandButton1_Click()
'Partimos de una hoja con contraseña, ej.: "4321"
'(que no la puede saber el usuario)
Dim Password As String
Password = InputBox("Introduce Contraseña")
'si el usuario indica, por ejemplo, que su
'cotraseña es = "Pepito". Entonces le dejamos
'escribir ÚNICAMENTE en la zona D10:F17
If Password = "Pepito" Then
ActiveSheet.Unprotect "4321"
ActiveSheet.Range("D10:F17").Locked = False
ActiveSheet.Protect "4321"
Else
MsgBox ("Contraseña Incorrecta")
Exit Sub
End If
End Sub
Deja una respuesta