Error de compilación en userform que pide User y Pass

Hola!
A lo mejor tu me puedes ayudar con este problemita.
Compre un libro sobre Macros en Excel de la revista USER.
El problema se me dio con un formulario para acceso restringido a planillas excel, es decir, un formulario que te pide Usuario y Contraseña y guarda las bases en una hoja de calculo oculta.
Hice correctamente todos los pasos pero al momento de ejecutar, me da el siguiente error:
El formulario tiene: Usuario y Contraseña (Labels y Textbox cada uno)
Un botón OK, y un botón cancelar.
- Me indica el error en el procedimiento Sub Boton_Ok_Click()
- Me pinta de gris txtUsuario.Text
El aviso que pone: "Error de compilación: Calificador no válido"
Les paso el código tal cual:
------------------------------------------------------------------------------------------------
Private Sub Boton_Ok_Click()
Dim txtUsuario As String
Dim txtPassword As String
Dim miIngreso As String
If txtUsuario.Text = "" Then
MsgBox "Introducir su nombre de usuario"
txtUsuario.SetFocus
Exit Sub
Else
txtPassword.SetFocus
End If
If txtPassword.Text = "" Then
MsgBox "Ingresar clave"
txtPassword.SetFocus
Exit Sub
End If
Range("USUARIO") = txtUsuario.Text
Range("PASS") = txtPassword.Text
miIngreso = Range("INGRESO").Value
If miIngreso = Range("VALIDA").Value Then
Me.Hide
Else
MsgBox "Usuario / Pass incorrectos", vbExclamation
txtUsuario.Value = ""
txtPassword.Values = ""
End If
End Sub
-------------------------------------------------------------------------------------------------
Public Sub txtPassword_keyDown(ByVal keycode As MSForms.ReturnInteger, ByVal shift As Integer)
If keycode = 13 Then Boton_Ok_Click
End Sub
------------------------------------------------------------------------------------------------
Public Sub txtUsuario_KeyDown(ByVal keycode As MSForms.ReturnInteger, ByVal shift As Integer)
If keycode = 13 Then Boton_Ok_Click
End Sub
------------------------------------------------------------------------------------------------
Public Sub userform_terminate()
Unload Me
End Sub
------------------------------------------------------------------------------------------------
Public Function Mayusculas()
UCase txtUsuario
UCase txtPassword
End Function
------------------------------------------------------------------------------------------------
Se que existen formularios más simples, pero este me gustó porque es muy completo.
Te agradezco de antemano, te mando un saludo.

1 Respuesta

Respuesta
1
Con respecto a ese código, yo no utilizaría el Dim txtUsuario As String, ya que esto es una variable, la cual chocaría con el txtUsuario.Text. Con respecto a la función tienes que poner Ucase(txtUsuario.Text) para que te lo ponga en mayúscula. Empieza por ahí y me avisas cualquier cosa.
Hola!
Tenias razón, elmine las declaraciones y comenzó a funcionar. Gracias por el dato del Ucase. Me anduvo fantásticamente, apenas termine todo el proyecto lo subo para compartirlo porque es muy completo y bien realizado.
Muchas gracias!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas