7 formas de usar la función MS Access DLookup () que no te puedes perder

¿Has escuchado o alguna vez probado la función Access Base de datos  DLookup? ¿Quieres saber más sobre esta función de Access Base de datos  DLookup? Entonces en ese caso estás en la plataforma correcta. Como, este tutorial está escrito con la perspectiva principal de proporcionarle la información completa sobre la función MS Access Dlookup y se centra principalmente en cómo usar dlookup en Access.

¿Qué es esta función de Access Dlookup?

Qué es esta función de Access Dlookup

La aplicación Microsoft Access tiene un poderoso paquete de manejo de datos con muchas funciones sólidas para hacer que la extracción de datos funcione de manera fácil. De esta vasta colección de funciones de MS Access, DLookup es la más trabajadora.

 En la aplicación MS Access, la función DLookup se usa para obtener el valor de un campo particular de un conjunto específico de registros (un dominio). Puede usar esta función DLookup en el módulo de Visual Basic para aplicaciones (VBA), una expresión de consulta, una macro o un control calculado en un formulario o informe.

Esta función es la mejor para recuperar el valor de un campo particular de un dominio. Aquí el dominio puede ser un conjunto específico de registros de tabla, consulta o expresión SQL. Se puede usar esta función DLookup para mostrar el valor de los campos que no están presentes en el conjunto de registros subyacente.

Por ejemplo:

Supongamos que tiene un formulario en la tabla Detalles de pedidos. El formulario mostrará los campos Cantidad, ID de pedido, ID de producto, Precio de unidad y Descuento. Sin embargo, en la tabla de productos, el “campo ProductName” está presente. En este caso, puede usar la función DLookup en el control calculado para mostrar el ProductName en el mismo formulario.

Ejemplos de funciones DLookup

Ejemplos de funciones DLookup

Dim newvar as variant

Newvar = DLookup(“[student name]”,”studentmaster”,”[rollno]=1001″)

Del ejemplo anterior, se extraen los datos del campo [nombre del alumno] de la tabla maestro de alumnos para el número de rollo 1001.

Compruebe qué ocurrirá si la función DLookup se proporcionó sin ningún criterio.

Newvar = DLookup(“[student name]”,”studentmaster”)

El código anterior devolverá los datos en el campo [nombre del alumno] del primer registro de la tabla maestro de alumnos.

También puedes usar variables en los criterios. Por ejemplo, un campo de formulario se puede utilizar como <condición>

Newvar = DLookup(“[student name]”,”studentmaster”,”[rollno]=Form![rollno]”)

Esto ayudará a comparar los datos en el campo [nombre del alumno] de la tabla maestro de alumnos con el que está en el campo [rollno] del formulario actual.

Para especificar los criterios textuales que provienen de un campo en un formulario, incluya las comillas simples.

Nvar = DLookup(“[rollno]”,”studentmaster”,

“[student name]=’ ” & Forms![Marks]![student name] & ” ‘ “)

En general, la moraleja de la historia es que la función DLookup se usa como una expresión en la consulta de MS Access o en un campo calculado en forma para recuperar valores externos. Bueno, puede usar esto también en el campo Criterios del generador de consultas. Esa es la razón por la que es más eficiente hacer una nueva consulta con campos de ambas tablas y usarla como conjunto de registros base.

DLookup elige los registros guardados del dominio. Otro registro no guardado no está incluido en el dominio.

TAMBIÉN TE PUEDE INTERESAR:

Cómo recopilar el formulario incrustado en la base de datos 2007/2010/2013/2016/2019?

Sintaxis de la función Dlookup de Microsoft Access:

Sintaxis de la función Dlookup de Microsoft Access

DLookup( expr, domain [, criteria)

La sintaxis de la función DLookup tiene estos argumentos:

Expr:

La parte de Expresión identifica el campo cuyo valor desea devolver. Esta puede ser una expresión de cadena para identificar un campo en la tabla o consulta o puede ser una expresión que realiza un cálculo en los datos del campo.

En la parte de expresión de la sintaxis de la función Dlookup, puede incluir el nombre del campo en una tabla, control o formulario, constante o función. Si esta parte incluye alguna función, puede ser definida por el usuario o incorporada pero no la función de agregado de SQL o cualquier otra función de agregado de dominio.

Dominio

  La expresión de cadena que identifica el conjunto de registros constituye la parte del dominio de la sintaxis de la función Dlookup. Puede ser el nombre de la tabla o el nombre de la consulta para la consulta que no necesita ningún parámetro.

Criterios

Expresión de cadena utilizada para limitar el rango de datos en el que se realiza la función DLookup. Supongamos que los criterios son equivalentes a la cláusula WHERE en la expresión SQL, sin usar la palabra WHERE. Si no se mencionan los criterios, la función DLookup se aplicará a todo el dominio. Cualquier campo que se incluya en los criterios debe ser un campo en el dominio; de lo contrario, la función devolverá un valor NULO.

Access a la base de datos La función DLookup () devuelve un solo valor desde un solo campo. Si ningún registro coincide con los criterios o si el dominio está vacío, la función DLookup () devolverá un valor nulo. Si más de un registro coincide con los criterios, en ese caso, DLookup devolverá la primera instancia de ese <fieldname>.

Por lo tanto, los criterios deben definirse cuidadosamente para obtener un campo único de la función DLookup. Si su criterio de registro es un texto, entonces mantenga ese texto entre comillas simples.

Para calcular los valores de fecha u hora, incluya la hora o el valor de los datos en signos numéricos (#).

¿Cómo utilizar la función Dlookup () en el Access?

Aquí se explican las siguientes circunstancias para aprender brevemente sobre cómo usar la función Dlookup () en Access.

#1 DLookup en el registro de datos vacío

Si aplica la función DLookup sobre la tabla o consulta que contiene registros, aparecerá un mensaje de error que indica “Uso no válido de nulo”. Esto sucede porque está intentando asignar un valor nulo a la variable strX.

Code:

Dim strX As String

strX = DLookup(“HolidayDate”, “tblHolidays”)

Me.txtResult = strX

End Sub

DLookup en el registro de datos vacío

Para evitar este mensaje de error, puede utilizar la instrucción IF para verificar si se ha encontrado un registro antes de asignar el valor del resultado al strX.

Código correcto:

Private Sub Command0_Click()

Dim strX As String

If IsNull(DLookup(“HolidayDate”, “tblHolidays”)) Then

     MsgBox “No Record Found”  ‘ or do something

Else

     strX = DLookup(“HolidayDate”, “tblHolidays”)

     Me.txtResult = strX

End If

End Sub

DLookup en el registro de datos vacío2

#2 DLookup con criterios textuales

Cuando use el signo de igual en el código “[UserLoginID] = ‘John’ ‘, solo el registro con el nombre de usuario completo =” John “aparecerá como resultado de este criterio.

El resultado se mostrará como “No se encontró ningún registro” porque no hay ningún registro con el nombre de usuario “John”, pero hay registros para “John Smith” o “John Vang”.

Code:

Private Sub Command0_Click()

If IsNull(DLookup(“[User Name]”, “tblUser”, “[User Name] = ‘john'”)) Then

     Me.txtResult = “No Record Found”

Else

     Me.txtUserName = DLookup(“[User Name]”, “tblUser”, “[User Name] = ‘john'”)

End If

End Sub

TAMBIÉN LEER

5 correcciones para resolver MS Access “Conflicto de escritura: el registro ha sido modificado por otro usuario” Error

#3 DLookup sin Criterios

Bueno, es la forma más sencilla de usar la función DLookup (); es decir, sin especificar ningún criterio. En este caso, la función DLookup le dará el valor del primer registro en el campo CustomerName de la tabla tbl_Customer.

Por lo tanto, la salida será “Barney Rubble” porque es el primer registro en la tabla tbl_Customer como se muestra en la siguiente figura.

Code:

Private Sub Command0_Click()

Dim strX As String

strX = DLookup(“CustomerName”, “tbl_customer”)

Me.txtResult = strX

End Sub

#4 DLookup con un criterio numérico que proviene del campo en el formulario actual

El código “[UserID] = Me.txtUserID” se usa aquí como criterio numérico para la función DLookup. Esto mostrará la salida “John Vang” porque el ID de usuario 3 es para el nombre de usuario “John Vang” según la tabla tblUser que se muestra arriba.

Code:

Private Sub cmdGetResult_Click()

Me.Refresh

If IsNull(Me.txtUserID) Then

     MsgBox “Please enter a UserID”

Else

     If IsNull(DLookup(“[User Name]”, “tblUser”, “[UserID] = ” & Me.txtUserID)) Then

         Me.txtUserName = “No Record Found”

     Else

         Me.txtUserName = DLookup(“[User Name]”, “tblUser”, “[UserID] = ” & Me.txtUserID)

     End If

End If

End Sub

#5 DLookup con criterios textuales que provienen de un campo en el formulario actual

El código “[UserLoginID] =‘ ”& Me.txtLoginID &“ ‘se usa como criterio para la función DLookup.

Supongamos que desea obtener el nombre de usuario para el UserLoginID ingresado en el cuadro de texto UserLoginID en este formulario y luego mostrarlo sobre el cuadro de texto Nombre de usuario.

Es incorrecto si en el cuadro de texto UserLoginID ingresa jvang, el nombre de usuario debe ser “John Vang”. Aquí se utilizan dos declaraciones de FI para este código para verificar si el UserLoginID se ingresa o no y también para evitar errores si el nombre de usuario se deja vacío para el UserLoginID ingresado.

Code:

Private Sub cmdGetResult_Click()

Me.Refresh

If IsNull(Me.txtLoginID) Then

      MsgBox “Please enter a UserLoginID”

Else

      If IsNull(DLookup(“[User Name]”, “tblUser”, “[UserLoginID] = ‘” & Me.txtLoginID & “‘”)) Then

           MsgBox “No User Name for this UserLoginID”

      Else

           Me.txtUserName = DLookup(“[User Name]”, “tblUser”, “[UserLoginID] = ‘” & Me.txtLoginID & “‘”)

      End If

End If

End Sub

#6 Consulta de búsqueda con criterios de fecha

La función DLookup también se utiliza para buscar información en la consulta. El código “[FinishDate] = # 4/30/2014 #” se ha utilizado como criterio de fecha para la función DLookup. Después de aplicar el código siguiente, la salida será “Tarea 5” porque la “Tarea 5” tiene la última fecha 30/04/2014 como la consulta “tarea completada” a continuación.

Code:

Private Sub Command0_Click()

If IsNull(DLookup(“[TaskName]”, “task completed”, “[FinishDate] = #4/30/2014#”)) Then

     Me.txtResult = “No Record Found”

Else

     Me.txtResult = DLookup(“[TaskName]”, “task completed”, “[FinishDate] = #4/30/2014#”)

End If

End Sub

# 7 DLookup con criterios numéricos

En esta sección, el código “[UserID] = 6” se usa como criterio numérico para la función de búsqueda de datos. Esto mostrará la salida, el “Adam Smith” porque la ID de usuario 6 se asigna para el Nombre de usuario “Adam Smith”.

Code:

Private Sub Command0_Click()

If IsNull(DLookup(“[User Name]”, “tblUser”, “[UserID] = 6”)) Then

    Me.txtUserName= “No Record Found”

Else

    Me.txtUserName = DLookup(“[User Name]”, “tblUser”, “[UserID] = 6”)

End If

End Sub

Envolver:

Esperamos que toda la información antes mencionada sobre la función Access DLookup le sea útil para acceder fácilmente a esta función DLookup () en Access Database a partir de ahora. La función DLOOKUP es silenciosa, fácil de usar, pero solo después de comprender cómo trabajar con ella. Por lo tanto, aprenda cómo usar la función DLOOKUP en múltiples criterios y pruébelos todos. Si te metiste en algún problema adicional relacionado con la función DLookup, pregunta en nuestra sección de Preguntas frecuentes. Seguramente obtendrá respuesta inmediata en su consulta.



7 formas de usar la función MS Access DLookup () que no te puedes perder …!