Access - Problemas con DLOOKUP

 
Vista:

Problemas con DLOOKUP

Publicado por Jorge (2 intervenciones) el 27/05/2020 16:32:03
Hola buenas,

Tengo un problema al utilizar la función DLOOKUP, no tengo mucha idea de VBA pero esta función se usa en varios sitios y no ha dado problema, pero hay un sitio donde no funciona. El problema es el siguiente:

Tengo un formulario donde introduzco datos sobre unos códigos de orden, los código de orden lo salen de una base de datos, y elijo que código es quiere que al lado, en un cuadro de texto, salga la descripción de ese código de orden.

Cuando elijo el código ya me sale una lista que tiene la información del código y la descripción, pero cuando lo quiere poner en el cuadro de texto, como en otros cuadros combinados, me salta un error : "ERROR '3464'- no coinciden lo tipos de datos en la expresión de criterios".

Tengo escrito en VBA la fórmula, como con los demás cuadros combinados pero me salta el error:

Private Sub OF_AfterUpdate()
Me.Of_Des = DLookup("DESCRIPCION_PRODUCTO", "OF_HISTOR", "COR_ORDEN=" & Me.OF)

El campo donde esta el código es 'OF', y coge los datos de 'OF_HISTOR'. acabando en 'Of_Des'.

He comprobado que todas los campos tengan mismo formato, si hay algún error de escritura, pero no consigo solucionarlo. Si alguien sabe como hacerlo agradecería su ayuda.

Gracias de antemano y Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problemas con DLOOKUP

Publicado por Anonimo (3316 intervenciones) el 27/05/2020 22:35:43
Lo que necesita Access y lo que le estés dando … parece que no son lo mismo.

Para ver q se le esta dando de verdad, añade esta línea antes del DLookup:

MsgBox Me.OF

Analizando esto:

Cuando elijo el código ya me sale una lista que tiene la información del código y la descripción,.....

Si el dato esta en una lista (en conjunto con el código … etc.) una posible alternativa es 'sincronizar' el cuadro de texto con esa columna de la lista (sin necesidad de código, algo como esto en el origen de datos de ese cuadro de texto:

= [nombre del objeto lista desplegable].column (xx) siendo xx el numero de la columna.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problemas con DLOOKUP

Publicado por Jorge (2 intervenciones) el 28/05/2020 09:07:22
Muchas gracias, lo intentaré. De todas formas, encontré el fallo revisando algunos foros, el fallo es que el 'Valor' de Me.OF es un texto por tanto tiene que ir entre comillas simples, y ya funciona; quedaría así:

Me.Of_Des = DLookup("DESCRIPCION_PRODUCTO", "OF_HISTOR", "COR_ORDEN= ' " & Me.OF & " ' ")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar