Buscar datos en una tabla

Nuevamente yo haciendo una consulta. Tengo una Tabla y un Formulario; En la Tabla están los campos "Usuario" y "Contraseña". En el Formulario tengo dos (2) Textos y un botón de comando. Bueno la cuestión es que deseo ingresar en el Text1 el "Usuario" de una persona para luego presionar el Botón de Comando, para que se realice una búsqueda del valor del Text1 en la Tabla, para que, si se encuentra el valor en la tabla, en el Text2 se devuelva la contraseña correspondiente al valor introducido en el Text1. De no encontrarse el valor de Text1 en la tabla, en Text2 que se devuelva "No encontrado". Es más o menos parecido a la función "Buscarv" de Excel. Osea quiero que si se encuentra el valor de Text1 en la Tabla, en Text2 me devuelva la contraseña. De otro modo que devuelva "No encontrado".

1 respuesta

Respuesta
1
Se resuelve de esta manera:
Locate For NombreCampo == Thisform.Text1.Value
If.Not.Found() Then
  Messagebox("No se encontró.")
  Else
     Thisform.Text2.Value = Tabla.Contraseña
Endif
Algo como eso podría resolver el problema.
Hola Experto, disculpa la demora en la respuesta.
Te comento que inserte el código proporcionado en Procedure "Click" del Botón pero introduzco un valor Válido en el Text1 y presiono el botón y como resultado, sale el mensaje no encontrado, aunque el valor introducido en Text1 sea correcto.
Por Ejemplo en la Tabla USUARIOS tengo los campos "Usuario" y "Contraseña"... En Usuario tengo registrado "LROCHA" y en Contraseña "6310345" (ambos sin comillas), Bueno en el Text1 de Formulario escribo LROCHA, presiono el Botón y sale el mensaje "No encontrado", cuando en el Text2 debería mostrarse 6310345...
Este código le puse al Botón:
LOCATE FOR Usuario == Thisform.Text1.Value
IF.NOT.FOUND()
MESSAGEBOX("No se encontró")
ELSE
Thisform.Text2.Value=Usuarios.Contraseña
Endif
Espero tu aclaración y nuevamente disculpas por la demorarme en responder. Gracias
Hola experto, te comento que derivado del código proporcionado y agregándole otras cosas pude obtener lo que quería... Así que el código que me proporcionaste quedó así:
LOCATE FOR Usuario = ALLTRIM(UPPER(Thisform.Text1.Value))
IF.NOT.FOUND()
MESSAGEBOX("No se encontró")
ELSE
Thisform.Text2.Value=Usuarios.Contraseña
Endif
Ahora anda 100 puntos. Muchísimas gracias por tu ayuda. Seguiré consultándote mis dudas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas