¿Como hacer para seleccionar un registro en un cuadro de lista y al hacer click los datos aparezcan en el formulario?

Dado que llevo varios días y no soluciono el problema.

Tengo un Formulario en Access llamado Relojes, en el cual tengo una serie de campos con distinta información. Ademas en la parte baja de dicho formulario he creado un Cuadro de Lista, un Campo de Texto y un botón con la idea de hacer un buscador dentro de todos los registros, el cual funciona perfectamente. El problema me surge cuando encuentro el registro seleccionado, dado que me gustaría que al hacer click en el mismo, los datos de dicho registro me aparecieran en el formulario y pudiera trabajar con ellos y no tengo ni idea de como hacerlo.

Respuesta
4

Honestamente, no sé como buscas un registro en particular, pero, la verdad es que no hace falta ni el cuadro de texto y el botón. Supongamos que el formulario se llama Clientes y depende de la tabla Clientes. Bastaría con poner en el evento Después de Actualizar del cuadro de lista( que yo no lo pondría, usaría un combinado)

me.recordsource="select * from Clientes where loquesea= '" & me.nombredelcuadrodelista & "'"

Lo de loquesea sería el nombre del campo del valor que buscas en el cuadro de lista.

Con lo cual sólo te mostraría el(los) registro(s) que cumplan esa condición y puedes modificar lo que quieras.

A ver, lo mismo no me he explicado bien... El cuadro de texto lo utilizo a modo de buscador, dado que tengo una tabla con muchos registros, para buscar un dato en concreto y cuando le doy a buscar con el botón que he creado me devuelve todos los resultados en el cuadro de lista. 

Lo que quiero hacer es que al seleccionar el registro que quiero en el cuadro de lista me devuelva todos los campos en el formulario, no se si me explico

Vamos a ver si me explico. Si tengo un formulario, donde en un combinado elijo un país

El resultado

Lógicamente, cuanto más "afine" en el combinado más concretará en el número de registros.

De otra forma, si en el cuadro de texto escribo una cadena del nombre de una ciudad, en este caso pongo ADR

Cuando pulso Enter

Es decir, me muestra aquellos registros en que el campo Ciudad tenga esa cadena, como mADRid, pADRón, etc. La ventaja es que tanto el combinado como el cuadro de texto "ocupan" poco espacio, mientras que un cuadro de lista, que está pensado para estar "desplegado" ocupa más.

El código de ambos sería

Private Sub Cadena_AfterUpdate()
Me.RecordSource = "select * from clientes where ciudad like ""*""&'" & Me.Cadena & "'&""*"""
End Sub
Private Sub ElegirPais_AfterUpdate()
Me.RecordSource = "Select * from clientes where pais ='" & Me.ElegirPais & "'"
End Sub

De todas formas, si donde vas a elegir el valor "definitivo" es el cuadro de lista, te decía que basta con que en sus propiedades-Eventos-Después de actualizar pongas

me.recordsource="select * from tablaorigendelform where loquesea='" & me.nombredelcuadrodelista & "'"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas