Proteger contra lectura una hoja del libro excel

Ya he visto como se puede proteger una hoja, mediante código y mediante la interficie de usuario, pero el problema es que no me lo protege contra lectura.
A mi me gustaría tener un documento excel donde una hoja de ellas, no pudiera ser leída, a no ser que se introdujera una contraseña.
Imaginaros que yo en la hoja 1 tengo un examen y en la hoja 2 tengo las respuestas, para que en la hoja 3 me salga automáticamente la puntuación... Pues desearía bloquear tanto la hoja 2 como la 3 para que el alumno no las pudiera leer, y yo como professor, poder desbloquearlas y así tener la corrección autamàtica del examen.

1 respuesta

Respuesta
1
Las hojas se pueden ocultar (menú Formato, hoja, ocultar)
Pero de este modo cualquier alumno avispado las puede volver a mostrar.
Por lo tanto hay que ocultarlas desde instrucciones o macro. Ajustá el nombre de tus hojas solamente.
Entrá al Editor, seleccioná el objeto ThisWorkbook (o este libro) y allí copiá esta rutina.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Sheets("Hoja2").Visible = xlVeryHidden
    Sheets("Hoja3").Visible = xlVeryHidden
End Sub
Luego insertá un módulo en el mismo Editor, y copiá esta otra que te permitirá mostrarla cuando sea necesario. Tendrás que asignarle un atajo de teclado (tema explicado en mi página de macros: http://aplicaexcel.galeon.com/macros.htm)
Nota: Ajustá el nombre de tus hojas
Option Private Module
Sub MuestraHojas()
' x Elsamatilde
    Sheets("Hoja2").Visible = True
    Sheets("Hoja3").Visible = True
End Sub
También desde el mismo Editor, menú Herramientas, Propiedades de VBA... protejé el editor con alguna clave (los alumnos están muy avispados últimamente... ;)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas