Problemas con Formulario de Usuario y Contraseña
Buenos días
Estoy elaborando un formulario que al momento de abrir excel valide usuario y contraseña de tal forma de que primero no accedan personas no autorizadas y segundo, dependiendo el permiso que se le de a un usuario, accedan a diferente áreas del archivo.
Primero, cree una base de excel donde se podrán crear usuarios y cuentas de operadores, que tendrán acceso unicamente a lo necesario.
Consideré importante crear acceso del administrador principal así como la de los usuarios avanzados directamente con código
Estos tres usuarios y contraseñas funcionan muy bien, pero al momento de ingresar usuarios y contraseñas del cuadro de excel no funcionan correctamente
Utilicé la siguiente estructura:
Private Sub CommandButton2_Click()
Dim Usuario As String
Dim CONTRASEÑA As String
Dim DatoEncontrado
If txtUsuario = "DVGUDINO" And txtClave = "dardan" Then
Application.ScreenUpdating = False
ActiveWorkbook.Activate
Application.Visible = True
Hoja1.Visible = True
Hoja2.Visible = True
Hoja3.Visible = True
Hoja4.Visible = True
Hoja5.Visible = True
Hoja6.Visible = True
Hoja7.Visible = True
Hoja8.Visible = True
Hoja9.Visible = True
Hoja10.Visible = True
Unload UserForm5
End If
If txtUsuario = "STROJAS" And txtClave = "110501959" Or txtUsuario = "GABY" And txtClave = "11050" Then
Hoja4.Visible = True
Unload UserForm5
Load UserForm1
UserForm1.Show
Usuarioexistente = Application.WorksheetFunction.CountIf(Hoja8.Range("C2:C7"), txtUsuario.Value)
Set rango = Hoja8.Range("C2:C7")
If txtUsuario = "" Or txtClave = "" Then
MsgBox "Por favor introduce usuario y contraseña", vbExclamation
ElseIf Usuarioexistente = 0 Then
MsgBox "El usuario '" & txtUsuario & "' no existe", vbExclamation
ElseIf Usuarioexistente = 1 Then
DatoEncontrado = rango.Find(what:=txtUsuario.Value, MatchCase:=True).Address
CONTRASEÑA = Range(DatoEncontrado).Offset(0, 1).Value
If Range(DatoEncontrado) = txtUsuario.Value And CONTRASEÑA = txtClave.Value Then
Unload UserForm5
Hoja8.Visible = True
Hoja3.Visible = True
Hoja8.Range("G2").Value = Range(DatoEncontrado).Offset(0, -1).Value
Else
MsgBox "La contraseña es inválida", vbExclamation, Blog
End If
End If
End If
End Sub
Pero el problema como les menciono es que no puedo ingresar con los usuarios de la hoja de excel.
Espero su pronta ayuda, y si es necesario puedo enviar el archivo de trabajo
Gracias