Access - Dlookup

   
Vista:

Dlookup

Publicado por David (1 intervención) el 01/09/2009 16:05:13
Tengo un problema con el manejo del Dlookup, he creado un bucle While - Wend para buscar registros en una tabla con la función Dlookup, funciona bien hasta que un registro no aparece en la tabla, devolviendo NULL. El problema es que a partir de ahí siempre devuelve NULL, no se cual es el motivo.
Gracias.
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
Imágen de perfil de Enrique Ramírez

RE:Dlookup

Publicado por Enrique Ramírez (617 intervenciones) el 01/09/2009 16:44:00
antes de hacer el Dlookup valida el valor del campo con un if si es nulo no lo proceses.
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

RE:Dlookup

Publicado por David (15 intervenciones) el 02/09/2009 08:29:26
Gracias, Enrique.
Lo que tengo hecho es esto:

Private Sub Boton_Click()
Dim X As Variant
Dim D As Date
D = Format(Date, "dd-mm-yyyy")
D = [FInicial]
MsgBox "Fecha Inicial: " & D
While D <= [FFinal]
X = DLookup("[Id]", "Registro de hora", "[CRT] = [Trabajador] AND [Fecha]=# " & D & "#")
If IsNull(X) Then
MsgBox "Falta al trabajo"
Else
MsgBox "Asiste a trabajar"
End If
D = D + 1
MsgBox "Dia despues: " & D
Wend
End Sub

En un formulario con tres cuadros de texto donde introducir [FInicial], [FFinal] y [Trabajador], y un boton que ejecuta este código.
El problema es que aún existiendo un registro determinado, no lo encuentra y devuelve un Null.

A ver si me puedes ayudar.
Gracias
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

RE:Dlookup

Publicado por dado (5 intervenciones) el 02/09/2009 21:39:09
revisa el link
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

RE:Dlookup

Publicado por Antonio (83 intervenciones) el 06/09/2009 00:20:04
Hola,

Es un problema con la fecha, quita la instrucción D=format(date,"dd-mm-yyyy") de donde la tienes y cambia la instruccion dlookup por lo siguiente
X = DLookup("[Id]", "Registro de hora", "[CRT] = [Trabajador] AND [Fecha]=# " & format(D,"mm/dd/yyyy") & "#")

Saludos
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