lunes, 10 de septiembre de 2012

Control TextBox para configurar un password. Userform VBA.


Cómo trabajar con el Control TextBox para capturar un password.

En este tutorial aprenderemos cómo se trabaja con un control TextBox de formulario para abrir un archivo de Excel por medio de un Password.
Primero debemos insertar un UserForm  que contenga un Label (Etiqueta) y  un TextBox, además de los botones Aceptrar y Cancelar (Command Button) que normalmente se usan en este tipo de formularios:




Para que el TextBox muestre asteriscos “ * ” en lugar del Password, debemos configurar su propiedad PaswordChar en la ventana de Propiedades (F4) y asignarle el " * " en el campo de la derecha.




Para que al momento de abrir el archivo se muestre el formulario debemos entrar a ThisWorkbook, en el explorador de proyectos, y escribir el siguiente código:


Sub Workbook_Open()

    Contraseña.Show

End Sub

Estamos trabajando con el Evento Open del formulario. Este evento controla la apertura del Libro, quiere decir que en cuanto éste se abra, inmediatamente se mostrará el formulario llamado "Contraseña". En la propiedad Name del formulario asignamos el nombre.

Al capturar el Password el TextBox mostrará solo asteriscos:





Cuando la persona de Aceptar debe comparar el valor introducido en el TextBox con el valor correcto "1234", si son idénticos entonces permite abrir el archivo, si no, manda un MsgBox indicando que el password es incorrecto y se cierra el archivo. Debemos programar el botón Aceptar de la siguiente forma:


Private Sub CommandButton1_Click()
valor = Val(TextBox1)    'Convierte a número el valor capturado en el Textbox
If Not valor = 1234 Then 'Si el valor es diferente que 1234 entonces
MsgBox "Password incorrecto" 'Manda el mensaje
ActiveWorkbook.Close 'Cierra el archivo
Else
Unload Me 'Descarga el formulario
End If
End Sub

También será necesario programar el botón cancelar para que cierre el libro al ser pulsado.


Private Sub CommandButton2_Click()
MsgBox "Se cancela la operación, el libro no se abrirá.", vbInformation
Unload Me
ActiveWorkbook.Close SaveChanges:=False
 'Este código cierra automáticamente el Libro.
End Sub

En este link puedes descargar el archivo de muestra.


Si quieres aprender más acerca de cómo crear y trabajar con Macros, pregunta por nuestro curso de Macros para contabilidad, administración y finanzas.


Contáctanos: atencionecap@ecapmexico.net
Teléfono en Guadalajara: 0133 3632-2719


No hay comentarios:

Publicar un comentario