Imprimir página | Cerrar ventana

Notas sobre uso de Dlookup

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Tus Funciones Favoritas & Aportaciones & Artí­culos
Descripción del foro: Para publicar código interesante, aportaciones y artículos
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=86357
Fecha de impresión: 26/Marzo/2026 a las 15:29


Tema: Notas sobre uso de Dlookup
Publicado por: Adrianet
Asunto: Notas sobre uso de Dlookup
Fecha de publicación: 27/Mayo/2022 a las 10:55
Hola amigos del foro,

Si me permiten, quiero realizar una pequeña aportación sobre el uso de la función Dlookup, y es el resultado de mi "búsqueda" para solucionar problemas que tenía en mis procedimientos. 
Son, como ya digo, unas notas que he ido recopilando en distintas webs, en distintos foros y también de mi experiencia personal. Doy las gracias a los grandes maestros que con sus respuestas y explicaciones hacen que nuestras dudas se resuelvan y nuestro conocimiento vaya creciendo.
Esta aportación va dirigida, especialmente, a todos aquellos que están en los inicios de VBA, y que espero les sirva de utilidad.
Ni que decir tiene, que estas notas, se podrían matizar e incluso ampliar, pero eso lo dejo a la libre elección de cada uno.
Ahi va:

FUNCIÓN DE DOMINIO :    Dlookup

  • Sintaxis general:

Variable = DLookup (“Campo”, “Tabla o Consulta”, “criterioBúsqueda”)

Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = numero”)

Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = ‘ texto ‘ “)

Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = # fecha # ”)

 

  • Referencia a campos:

Para valores numéricos: (sin comilla):                       Variable = DLookup (“campo”, “Tabla”, “campoFiltro =  Número”)

Para valores de texto: (con comillas simples):            Variable = DLookup (“campo”, “Tabla”, “campoFiltro = ‘ texto’ “)

Para fechas: (con almohadilla #):                              Variable = DLookup (“campo”, “Tabla”, “campoFiltro = #05-10-2022# “)

 

·    Referencia a controles de un formulario

Para valores numéricos:                             Variable = DLookup (“campo”, “Tabla”, “campoFiltro = “ & Me.control)

Para valores de texto:                                Variable = DLookup (“campo”, “Tabla”, “campoFiltro = ‘ “ & Me.control & “ ‘ )

Para fechas:                                              Variable = DLookup (“campo”, “Tabla”, “campoFiltro = #” Me.controlF & “ # “)

Para números:       Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = “ & Forms!nombreForm!nombreControl)

Para textos:           Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = ‘ “ & Forms!nombreForm!nombreControl  & “ ‘ “)

Para fechas:          Variable = DLookup (“Campo”,”Tabla”, “campoFiltro = #“ & Forms!nombreForm!nombreControl  &  “ # “)

 

Expresiones equivalentes:

Control  de un formulario                                  Campo de la tabla                           Variables, con refer.a campos/controles

Me.Control                                                       “nombreCampo”                             strCampo = valorCampo, valorControl       

Forms!nombreForm!Control                              [nombreCampo]                              intCampo = valorCampo, valorControl

                                                                       [Tabla].[nombreCampo]                  datCampo = valorCampo, valorControl

Expresiones para datos de fecha en los criterios:

- Como fecha y con formato :                      “CampoFiltroFecha = #” & Format(nombreCampoFecha, “dd/mm/yyyy”) & “#”

- Convirtiendo a fecha con formato local.         “CampoFiltroFecha = #” & CDate(nombreCampoFecha) & “#”

- Convirtiendo la fecha a un número:                “Cdbl(CampoFiltroFecha)  =  “ &  Cdbl(CDate(nombreCampoFecha)))

- Otra sugerencia de fecha-número:                 “CampoFiltroFecha  =  “ &  Clng(CDbl(nombreCampoFecha)))

 

-     Combinaciones de distintos tipos de datos en criterio :

- Dato numérico + dato fecha :

“CampoNum = “ & Me.controlNum  & “ AND CampoFecha  = # “ & Me.controlFecha & “ # “

- Dato texto + dato fecha:

“CampoNum = ‘ “ & Me.controlNum  & “ ‘  AND CampoFecha  = # “ & Me.controlFecha & “ # “

- Dato numérico + dato texto + dato fecha :

“CampoFiltro1 = “ & Me.Control1 & “ AND  CampoFiltro2 = ‘ “ & Me.Control2 & “ ‘ “ AND  CampoFiltro3 = # “ & Me.control3 & “ # “)

- Dato texto + dato texto, con variables:

“Campo1 = ‘ “ & strVariableTexto1 & “ ‘ AND Campo2 = ‘ “ & strVariableTexto2 & “ ‘ “

Uso de Dlookup con criterios textuales, es decir, indicando directamente el valor de coincidencia en la búsqueda:

Por ejemplo,

- Para valores numéricos:                                  “Campo = 2456 “

- Para valores de texto:                                      “Campo = ‘Antonio Pérez ’ “

- Para valares de fecha:                                     “Campo =  #25/02/2022# “






Imprimir página | Cerrar ventana