



En Excel podemos abrir un libro mediante contraseña, pero nos puede interesar restringir el número de intentos para insertar la contraseña a tres, contraseña con intentos en Excel.

- EDITOR VISUAL BASIC. Abrimos el editor de Visual Basic.
Abrir el libro deseado
Guardar con la extensión *.xlsm. Libro habilitado para macros.
Pulsar la tecla Alt y mantener pulsada
Pulsar la tecla F11. Mostrará el editor de Visual Basic.
- INSERTAR FORMULARIO. Creamos un formulario para validar la contraseña.
Ir a: Barra de menús
Insertar
UserForm. Insertará un formulario vacío.
De manera predeterminada el formulario obtendrá el nombre de UserForm1 (necesario para identificarlo en el código de la macro). Si deseamos cambiarlo, Ir a: ventana de propiedades
Propiedad: Caption.
- CUADRO CONTRASEÑA. Insertamos un cuadro de texto para la contraseña.
Ir a Panel: Cuadro de Herramientas
Clic sobre cuadro de texto.
. Si no está visible, Ir a: Barra de menú
Ver
Cuadro de herramientas.
Clic sobre la vista del UserForm. Insertará un cuadro de texto para insertar la contraseña.
De manera predeterminada el control obtendrá el nombre de TextBox1 (necesario para identificarlo en el código de la macro). Si deseamos cambiarlo, Ir a: ventana de propiedades
Propiedad: Name.
- BOTÓN CONTRASEÑA. Insertamos un botón para validar la contraseña escrita.
Ir a Panel: Cuadro de Herramientas
Clic sobre botón de comando.
. Si no está visible, Ir a: Barra de menú
Ver
Cuadro de herramientas.
Clic sobre la vista del UserForm. Insertará el botón de validación.
De manera predeterminada el control obtendrá el nombre de CommandButton1 (necesario para identificarlo en el código de la macro). Si deseamos cambiarlo, Ir a: ventana de propiedades
Propiedad: Name.
TEXTO BOTÓN. Ir a: Ventana propiedades
Propiedad: Caption
Escribir: Contraseña. O el texto deseado.
- BOTÓN CERRAR. Insertamos un botón para salir sin validar la contraseña.
Ir a Panel: Cuadro de Herramientas
Clic sobre botón de comando.
. Si no está visible, Ir a: Barra de menú
Ver
Cuadro de herramientas.
Clic sobre la vista del UserForm. Insertará el botón de salir sin la validación.
De manera predeterminada el control obtendrá el nombre de CommandButton2 (necesario para identificarlo en el código de la macro). Si deseamos cambiarlo, Ir a: ventana de propiedades
Propiedad: Name.
TEXTO BOTÓN. Ir a: Ventana propiedades
Propiedad: Caption
Escribir: Cerrar. O el texto deseado.
- VISTA DE CÓDIGO DEL USERFORM. Insertamos el código para el formulario, formado por 5 macros.
Ir a: Barra de menús
Ver
Código; O también, Atajo de teclado F7.
Escribir el código de la macro 1:
Public Analiza As Byte
Escribir el código de la macro 2, para validar la contraseña:
Private Sub CommandButton2_Click()
Unload Me
ActiveWorkbook.Close SaveChanges:=False
End Sub
Escribir el código de la macro 3:
Private Sub CommandButton1_Click()
If Me.txtPass.Value = 1234 Then
Unload Me
Else
Analiza = Analiza + 1
MsgBox "¡ INTENTALO DE NUEVO !" & vbNewLine & "Dispones de 3 intentos" & vbNewLine & vbNewLine & "Intento Nº: " & Analiza, vbInformation, "Aviso: Contraseña no válida"
Me.txtPass.SetFocus
Me.txtPass.Value = ""
End If
If Analiza = 3 Then
Unload Me
ActiveWorkbook.Close SaveChanges:=False
Else
End If
End Sub
Me.txtPass.Value = 1234. Incluye la contraseña que deberemos insertar.
Intentos = 3. El número de veces que solicitará la contraseña incorrecta.
Escribir el código de la macro 4:
Private Sub UserForm_Initialize()
With Me
.txtPass.PasswordChar = "*"
.txtPass.MaxLength = 6
End With
End Sub
.txtPass.MaxLength = 6. Número de caracteres máximos para la contraseña.
Escribir el código de la macro 5:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then
Cancel = True
MsgBox "Insertar la contraseña del libro.", vbInformation, "Aviso: CONTRASEÑA"
End If
End Sub
- MACRO LIBRO. Para cargar el formulario al abrir el libro.
Ir a: Explorador de Proyectos
VBAProject
Doble Clic sobre ThisWorkbook. Si el panel no está visible Ir a: Barra de menú
Ver
Explorador de proyectos. Mostrará la ventana del módulo donde escribimos la macro.
Escribir el código de la macro:
Private Sub Workbook_Open()
UserForm1.Show
End Sub
- OTRAS
Insertar una hoja nueva de entrada
Insertar un texto de aviso. Al abrir el libro antes de insertar la contraseña, mostrará la información de la página activa. Mostrando la información que contiene (la nueva hoja ocultará la información).
El nivel de seguridad de las macros requiere que esté en "Habilitar todas las macros".
Guardar el libro desde la nueva hoja de Entrada.
Cerrar el libro habilitado para macros.
Abrir de nuevo el libro
Verificar como muestra el mensaje de contraseña con tres intentos.

Disponiendo así de una macro que nos permita aplicar una "Contraseña de apertura con intentos en Excel" para la apertura del libro.

- Consultar: