Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado

Simular usuario y Password en VBA

| Sin comentarios

En el siguiente artículo usted aprenderá a realizar un login básico en un formulario usando VBA. Este consiste en que cuando el usuario quiera acceder al libro Excel, este inmediatamente muestre una ventana de Login.

Además, esta venta que se abre para solicitar las credenciales, impide que el libro se muestre en su totalidad hasta que ingrese las credenciales correctas, estas son:

Usuario: admin

Contraseña: 12345

Así mismo, usted puede cambiar las credenciales desde el código del formulario.

'Validación de la credenciales correctas

If Trim (txtUser.Text) = "admin" And Trim (textContra.Text) = "12345" Then

MsgBox ("Acceso correcto"), vbInformation, "Ok"

Application.Visible = True 'Esta línea de código permite mostrar el libro excel

End

Else

MsgBox ("Las credenciales ingresadas son incorrectas, intente de nuevo"), vbExclamation, "Alerta"

End if

End sub

La sintaxis empieza declarando las variables a usar y asignándoles un valor a cada una, en este caso serán User y contraseña.

Dim user, contraseña As String

user = txtUser.Text

contraseña = txtContra.Text

Luego, se tendrá que validar que los campos de las credenciales este completo, luego se vera la validación de ellas.

'Comprobar que el usuario ingrese las credenciales

If Trim(txtUser) = "" Then ' Trim sirve para descartar saltos vacíos en el campo Usuario

    MsgBox "Ingrese Usuario, intente de nuevo", vbExclamation, "Alerta" 'Mensaje de alerta indicando que el campo debe ser llenado

    txtUser.SetFocus 'Ubica el curso en el campo Usuario

    Exit Sub

End If

If Trim(txtContra) = "" Then ' Trim sirve para descartar saltos vacíos en el campo Contraseña

    MsgBox "Ingrese Contraseña", vbExclamation, "Alerta" 'Mensaje de alerta indicando que el campo debe ser llenado

    txtContra.SetFocus 'Ubica el curso en el campo Contraseña

    Exit Sub

End If

 

Después viene la validación de la credencial correcta.

 

'Validación de las credenciales correctas

If Trim(txtUser.Text) = "admin" And Trim(txtContra.Text) = "12345" Then

    MsgBox ("Acceso correcto"), vbInformation, "Ok"

    Application.Visible = True 'Esta línea de código permite mostrar el libro Excel luego de ingresar las credenciales correctas

    End

Else

    MsgBox ("Las credenciales ingresadas son incorrectas, intente de nuevo"), vbExclamation, "Alerta"

    End If

End Sub

 

Todo lo de arriba conlleva la programación del botón INGRESAR, ahora para el botón cancelar simplemente colocamos lo siguiente:

 

Private Sub btnCan_Click()

Unload.me 'Cierra el formulario en su totalidad.

End Sub

 

Finalmente, para que el libro de Excel nos pida las credenciales al inicio se tiene que colocar el siguiente código en ThisWorkbook:

Private Sub Workbook_Open()

    Application.Visible = False 'No permite que el libro se muestre al abrirlo

    UserForm1.Show 'Muestra el formulario de login como primera ventana

End Sub

Bonus:

Adicionalmente se cambio la manera en la que se muestra los caracteres en el campo CONTRASEÑA, esto se hizo mediante la herramienta PROPIEDADES (Se coloco el carácter *).

Login

 

Deja un comentario

Los campos requeridos estan marcados con *.