Función: Dlookup() Caso Practico
Una solucion de enlazamiento de datos en formularios de access es precisamente el uso de dlookup() de Access. con esta funcion es posible extraer datos referenciados a una busqueda dentro de un formulario.
En este ejemplo vamos a aprender como enlazar datos de cliente dentro de un formulario de Ventas, solo con hacer uso de la funcion dlookup() de Access. para seguir este ejemplo les he preparado el siguiente vídeo donde se aprecia como usar dlookup() y ver los resultados dentro del mismo formulario.
VER VIDEO
La sintaxis Dlookup() es la siguiente:
Dlookup(Expr as string, Domain as string, criteria)
Expr as string = colocamos el nombre del campo que deseamos encontrar
Domain as string = colocamos el nombre de la tabla donde se encuentra el campo
criteria = seria el filtro utilizado para encontrar la coincidencia
por Ejemplo:
NOMBRE = DLookup("[NOMBRE]", "[CLIENTES]", "ID_CLIENTE=" & ID_CLIENTE)
Aqui vamos a asignar el resultado de la busqueda en el control "NOMBRE"
La busqueda hace lo siguiente:
Busca el campo NOMBRE en la tabla de CLIENTES donde el ID_CLIENTE de la tabla de CLIENTES sea igual a ID_CLIENTE (control del formulario)
muy buena, gracias
ResponderBorrarNo me sirvio nose por que no busca el criterio que tengo
ResponderBorrarTengo dos tabals en una "tabla1" tengo una campo llamado tipo y otro llamado similar
y en la otra tabla "tabla2" tengo un campo Insul y otro similar
El problema es que Los valores en "tabla1" Tipo son combobox de insul, pero tiene campos similares los cuales quiero que aparescan en el campo similar de la tabla1 y necesito buscar esos similares en tabl2
asi que sie lo siguiente en un formulario de tabla1
similar = dlookup("[tipo]","[tabla2]","similar="&similar)
Ya lo intente de otras maneras modificando un poco el campo criteria pero NO me DA, siempre me aparece el primer valor de la Tabla2
Que tal Ivan, definitivamente cada caso es diferente es por eso que solo parte del ejemplo publicado te sea util y otro no.
BorrarDejame decirte que no me queda claro por completo tu problema, sin embargo alcanzo a distinguir unos posibles errores en la implementacion de la funcion.
Si yo leo esta funcion que escribiste lo entenderia asi...
similar = dlookup("[tipo]","[tabla2]","similar="&similar)
... Guardar en la variable SIMILAR el contenido dela variable TIPO, que se encuentra de la busqueda de la tabla2 donde SIMILAR de la tabla2, sea igual a SIMILAR de la tabla1...
Entrando en detalles porque asignar a una variable que se llama "SIMILAR" el contenido de la variable "TIPO"
similar<-tipo
verifica esto, en tu codigo,, saludos!
Estimados y como lo hago para el caso de una consulta ??? o solo se puede hacer desde tablas...
ResponderBorrarSlds
Solo colocas en lugar del nombre de la tabla, el nombre de la consulta y debe funcionar
BorrarExcelente tutorial!!! Gracias
ResponderBorrarbuenas tardes, espero que me ayuden CON ESTE CASO
ResponderBorrarMe.CODIGO=dlookp("[CODIGO]","[PRODUCTOS]","DESCRIPCION="&DESPROD)
Lo cual en DESPROD tengo un valor asi: CUERPO P'PEDESTAL DE MANIOBRAS 1 1/2"
ESTO ME CAUSA ERROR. PORFAVOR AYUDENME.
Hola Valentine3 no me queda claro tú error, podrías ser mas especifico, pero voy a tratar de responde tu duda:
BorrarTe recomiendo que cambies Me.CODIGO ya que aquí debe ir el nombre del cuadro de texto (TEXTBOX), por ejemplo si tu cuadro de texto en el formulario lleva por nombre CODIGO, para que quede así:
CODIGO = dlookp("[CODIGO]","[PRODUCTOS]","DESCRIPCION="&DESPROD)
También te recomiendo quitar los corchetes de la expresión del campo a buscar, quedando así:
CODIGO = dlookp("CODIGO","[PRODUCTOS]","DESCRIPCION="&DESPROD)
Y por último te recomiendo poner entre corchetes el criterio del campo a enlazar, quedando así:
CODIGO = DLookUp("CODIGO", "[PRODUCTOS]","[DESCRIPCION]=" & [DESPROD])
Así debería quedar para que no te salga error, me dices si te sirvió
Saludos
HOLA SERGIO, EL ERROR SURGE A PARTIR DE QUE EL DLOOKUP ENCUENTA UNA DESCRIPCION QUE CONTIENE UN APOSTROFE O CARACTERES ESPACIALES (CUERPO P'PEDESTAL DE MANIOBRAS 1 1/2"). Y ES AHI CUANDO NO ME DEVUELVE EL CODIGO DE MI PRODUCTO CON DICHA DESCRIPCION.
BorrarAYUDA...!!!!