Validar espacios vacíos en un userform con limite de validación para un usuario y contraseña
Estoy tratando de que cuando se abre el formulario si el usuario no le ingresa usuario y contraseña pues que muestre un mensaje y que si lo ha
Control = 1
'UserForm1.Show
For Control = 1 To 3
100 usuario = TextBox1.Text
contraseña = TextBox2.Text
'se muestra mensajes en caso de que se le de iniciar y no haya llenado los campos
If Control = 3 Then GoTo 10000
If Trim(TextBox1.Text) = "" Or Trim(TextBox1.Text) = "" Then
MsgBox "Por favor ingresa usuario y contraseña", vbExclamation, "Alerta":
UserForm3.Hide
TextBox1.SetFocus
Control = 1 + 1: UserForm3.Show: GoTo 100
'Exit For
'Exit Sub
End If
' esta variable userexistente va ser un conteo del rango de los valores que hay en la columna usuario
Userexistente = Application.WorksheetFunction.CountIf(Range("Usuario"), _
Me.TextBox1.Value)
Valpassword = Application.WorksheetFunction.CountIf(Range("password"), _
Me.TextBox2.Value)
If Userexistente = 0 Or Valpassword = 0 Then
MsgBox "Usuario o contraseña Incorrectos", vbExclamation, "Alerta"
TextBox1.SetFocus
Exit Sub
End If
Sheets("Gestores").Select
'Range("Usuario").Select
Set Rango = Range("Usuario")
'se valida que el user exista en la tabla
If Userexistente = 0 Then
MsgBox "El Usuario '" & Me.TextBox1 & "' no existe", vbExclamation, blog
Me.TextBox1.SetFocus
'En caso de que si exista el usuario, se valida su contraseña
ElseIf Userexistente = 1 Then
DatoEncontrado = Rango.Find(What:=Me.TextBox1.Value, MatchCase:=True, lookAt:=xlWhole).Address
contraseña = CStr(Range(DatoEncontrado).Offset(0, 1).Value)
If Range(DatoEncontrado).Value = Me.TextBox1.Value And contraseña = _
Me.TextBox2.Value Then
UserForm1.Show
Else
MsgBox "La contraseña es inválida", vbExclamation, blog
End If
For i = 1 To 3 Step 1
MsgBox "ingrese de nuevo la contraseña"
If contraseña <> TextBox2.Value Then
MsgBox "contraseña incorrecta, vuelve a intentarlo"
TextBox1.Value = ""
TextBox2.Value = ""
Exit Sub
End If
Next i
If i = 4 Then
MsgBox "Ha ingresado la contraseña incorrecta el numero maximo de vecese su acceso ha sido denegado", "ACCESO NO PERMITIDO", vbCritical
Unload Me
End If
End If
Next Control
10000 End Sub
Ce a las tres veces se cierre el userform
Lo he intenteado con un ciclo for y while pero no me deje volver a pedirle que llene las textbox
Tengo un contador y no suma los intentos . Quien me ayuda
1 respuesta
Respuesta de Dante Amor
1