Imprimir página | Cerrar ventana

Dlookup sintaxis en combinaciones de criterios

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=86372
Fecha de impresión: 26/Marzo/2026 a las 17:33


Tema: Dlookup sintaxis en combinaciones de criterios
Publicado por: Adrianet
Asunto: Dlookup sintaxis en combinaciones de criterios
Fecha de publicación: 10/Junio/2022 a las 09:05
Hola amigos del foro,
siguiendo con la temática de la función de dominio Dlookup, he profundizado en la distinta variedad de criterios que se pueden usar, y sus combinaciones entre ellos, y siguiendo la estructura que ofrece la web MicroSoft Access sobre esta función he realizado este pequeño resumen.

Espero que les sea de utilidad y que los maestros del foro den su aprobación.


FUNCIÓN DLOOKUP     Dlookup (“Campo”, “Tabla o Consulta”, “Criterio_búsqueda”)

Combinaciones de distintos tipos de datos en criterio de búsqueda:

Nos centraremos en la sintaxis de la expresión que incluimos como criterio de búsqueda, y con valores de Número, Texto y Fecha.

Utilizaremos  los nombres para campos de filtro: CampoNum, CampoTexto, CampoFecha

Utilizaremos los nombres para los valores de coincidencia : Me.ControlNum, Me.ControlTexto, Me.ControlFecha

Estos valores serán equivalentes a utilizar nombres de variables, es decir, su sintaxis es igual en ambos casos. (varNum, varTexto, varFecha)

Los valores de fecha irán siempre formateados como “mm/dd/yyyy” en la expresión, es decir, donde pone Me.controlFecha , escribiremos Format(me.controlFecha, “mm/dd/yyyy”)

 

- Dato numérico + dato numérico:

“CampoNum1 = “ & Me.controlNum  & “ AND CampoNum2  =  “ & Me.controlNum1

 -  Texto  +  texto :

“CampoTexto1 = ‘ “ & me.controlTexto1 & “ ‘ AND CampoTexto2 = ‘ “ & Me.controlTexto2 & “ ‘ “

 - Fecha + fecha:

“CampoFecha1 = # ”  & Me.controlFecha1  & “ # ” “  AND CampoFecha2  = # “ & Me.controlFecha2 & “ #”

 -  Número + texto :

“CampoNum = “ & Me.controlNum & “ AND  CampoTexo = ‘ “ & Me.controlTexto & “ ‘ “

 - Número + fecha :

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

 -  Texto  +  número  :

"CampoTexto"  = ' " & Me.controlTexto & " ' " & "  AND CampoNum  = " & Me.controlNum

 -  Texto + fecha:

“CampoTexto = ‘ “ & Me.controlTexto  & “ ‘  AND CampoFecha  = # “ & Me.controlFecha & “ # “

 - Fecha + número :

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

 - Fecha + texto :

“CampoFecha = # ”  & Me.controlFecha  & “ # ” & “  AND CampoTexto = ‘ “ & Me.controlTexto & “ ‘ “

·          Con tres valores en criterio:

 - Número + texto + fecha :

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

 - Número + texto + texto :

“CampoNum = “ & Me.controlNum & “ AND  CampoTexto1 = ‘ “ & Me.controlTexto1 & “ ‘ AND  CampoTexto2 = ’ “  & Me.controlTexto2 & “ ‘ “

 - Número + fecha + fecha :

CampoNum = “ & Me.controlNum  & “ AND CampoFecha1  = # “ & Me.controlFecha1 & “ # “ & “ AND CampoFecha2 = = # “ & Me.controlFecha2 & “ # “

 - Texto + número + número :

“CampoTexto = ‘ “ & Me.controlTexto & “ ‘  AND  CampoNum1 =  “ & Me.controlNum1 & “  AND  CampoNum2 =    & Me.controlNum2

 - Texto + número + fecha :

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

 Texto +  fecha + fecha :

“CampoTexto  = ‘ “ & Me.controlTexto & “ ‘ AND CampoFecha1 = # ”  & Me.controlFecha1  & “#” “  AND CampoFecha2  = #“ & Me.controlFecha2  & “ # “

 - Fecha + número + texto :

“CampoFecha = # ”  & Me.controlFecha  & “ # ” & “  AND CampoNum  = “ & Me.controlNum & “ CampoNum = “ & Me.controlNum & “ AND CampoTexto = ‘” & Me.controlTexto “ ’ ”

 - Fecha + texto + número :

“CampoFecha = # ”  & Me.controlFecha  & “ # ” & “  AND CampoTexto = ‘” & Me.controlTexto “ ’  & AND CampoNum = “ & Me.controlNum

 

Para sucesivas combinaciones, no hay más que aplicar la sintaxis siguiendo el orden de los valores, como se indican anteriormente.

Por ejemplo:

Fecha + fecha + fecha, no es más que unir un criterio para fecha a los dos anteriores de fecha, siguiendo siempre la sintaxis de la expresión.

 

Saludos a todos.




Imprimir página | Cerrar ventana