Cómo buscar el valor de un campo a partir del valor de un cuadro combinado

Tengo un formulario con un cuadro desplegable que obtiene los valores de una consulta llamada "Orienta_apellidos" y que tiene por nombre "txt_solicitado". Los valores los obtiene de un campo llamado "NyA" cuyo valor se obtiene de dos campos: [Nombre] & " " & [Apellidos].

Tengo también dos cuadros de texto independientes en el formulario llamados "s_nombre" y "s_apellidos".

Lo que quiero es que, una vez seleccionada una de las opciones del cuadro combinado, se rellene el campo "s_nombre" y "s_apellidos" con el nombre y apellidos correspondiente.

He puesto el siguiente código en el evento "después de actualizar":

s_nombre = DLookup("[Nombre]", "[Orienta_apellidos]", "[NyA] =" & txt_solicitado)

Pero me sale el error 3075. Error de sintaxis (falta operador) en la expresión de consulta....

2 respuestas

Respuesta
1

s_nombre=Dlookup("nombre","orienta_apellidos","nya like '" & me.txt_solicitado & "'")

Cuando los nombres no tienen espacios separatorios no se necesitan corchetes y como txt_solicitado es texto hay que poner apostrofe comillas y cerrar con comillas apostrofe comillas.

Respuesta
1

Lo ideal es que a ese combo se le añadan dos columnas (si se les indica que su anchura es cero no serán visibles), una para el nombre, otra para el apellido.

Se supone que actualmente el origen de datos del ComboBox es algo similar a:

Select  [Nombre] & " " & [Apellidos] As NyA From .....

Solo hay que añadir:

Select  [Nombre] & " " & [Apellidos] As NyA, [Nombre], [Apellidos] From ...

Nombre del ComboBox = 'Cbo_Persona':
Nombre de los objetos en ese mismo formulario =  's_nombre' y 's_apellidos'

En el evento adecuado del ComboBox':

Me.s_nombre = Me.Cbo_Persona.Column (1)
Me.s_apellidos= Me.Cbo_Persona.Column (2)

Nota: la columna cero (0) es la única visible y se corresponde con 'NyA'

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas