Access - DLOOKUP con fechas

   
Vista:

DLOOKUP con fechas

Publicado por antonio (78 intervenciones) el 05/05/2015 13:33:09
Buenas a todos,


Quiero que mi formulario inicial al abrise me indique en función del día si hay algún evento (cumpleaños) en ese día. Para ello previamente en mi tabla Personas cree el campo [FECHA_NACIMIENTO] tipo campo fecha/hora y [celebracion] tipo texto. En el formulario puse dos campos uno donde aparece la fecha del día, en formato corto txtfecfa y otro donde se volcará el texto txtdia

Me pregunto como debo operar con estos formatos de fecha

Muchas gracias


1
2
3
4
5
6
7
8
9
Dim vfecha As String
Dim vceleb As String
 
 
vfecha = Date
vfecha = Format(vfecha, "mm/dd")
Me.txtfecfa.Value = vfecha
vceleb = DLookup([celebracion], "Personas", "[FECHA_NACIMIENTO]=" & vceleb)
Me.txtdia.Value = veceleb
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 Neckkito

DLOOKUP con fechas

Publicado por Neckkito (1104 intervenciones) el 05/05/2015 15:51:56
Hola Antonio:

Lamento decirte que no acabo de entender tu consulta. Para empezar tu código tiene incongruencias: dices que tienes la fecha de nacimiento como fecha, declaras las variables vfecha y vceleb como string y después vas y le dices que vfecha=date, lo cual te devuelve la fecha del sistema. ¿Date o String?

Por otra parte no entiendo para qué necesitas volcar la información en un nuevo campo (eso te crearía información redundante).

Créate una consulta sobre la tabla Personas con los campos que necesites y:

- En una columna en blanco escribe la expresión:
DiaNac: Day([FECHA_NACIMIENTO])
y como filtro escribes
day(Date())

- En otra columna en blanco escribe la expresión:
MesNac: Month([FECHA_NACIMIENTO])
y como filtro escribes
month(Date())

Ahora, en el formulario, te creas un procedimiento en el que o bien utilizas un dcount() o un recordset sobre esa consulta. Si la consulta te devuelve registros es que hay personas que ese día celebran el cumpleaños.

Saludos,
firmaMail
http://neckkito.siliconproject.com.ar
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

DLOOKUP con fechas

Publicado por antonio (78 intervenciones) el 05/05/2015 16:58:50
Muchas gracias por tu ayuda y predisposición.

Quizás como he planteado la pregunta no sea correcta.

La idea es que en mi formulario de inicio al abrirlo me diga que fiesta es hoy.

Para esto previamente en una tabla he creado un campo fecha y otro campo celebración indicando el día y el motivo de la celebración.

Al abrir el formulario la dinámica que había pensado es:

1. Saber que día es hoy 05/05
2. Buscar el día en la tabla
3. Si el día que de hoy coincide con algún día de la tabla, en un campo independiente del formulario refleje el nombre.

Es decir supongamos que hoy es 05/05 el día de bob esponja al abrir el formulario quiero que me diga "hoy es el día de bob"
Mi problema es si en la tabla meto los datos como 05/05/2011 hoy es el día de bob ¿como relaciono fecha 05/05 con 05/05/2011?

Muchas 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
Imágen de perfil de Neckkito

DLOOKUP con fechas

Publicado por Neckkito (1104 intervenciones) el 05/05/2015 19:07:56
Hola!

Ahí tienes cómo hacerlo... a medias... je, je...: https://www.mediafire.com/?gioeflel2kp0csp

Te lo hace casi todo menos lo de pasarlo a un campo independiente. Eso lo dejo para ti, para que le des un par de vueltas. Lo hago así porque sé que estás interesado en aprender, y no en que te lo den todo hecho.

Obviamente, si no consigues sacarlo, me lo comentas y te lo adapto.

Saludos,

Neckkito
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

DLOOKUP con fechas

Publicado por antonio (78 intervenciones) el 06/05/2015 10:51:26
Muchas gracias,

Lo acabo de descargar y es justo lo que indicaba, paso a estudiarlo y comentaré si me ha sido útil y pude adaptarlo.

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
Imágen de perfil de Neckkito

DLOOKUP con fechas

Publicado por Neckkito (1104 intervenciones) el 06/05/2015 10:53:48
Esperamos ansiosos tus comentarios... je, je...

A cuidarse!

Neckkito
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

DLOOKUP con fechas

Publicado por antonio (78 intervenciones) el 07/05/2015 17:03:54
Estimado Neckkito,

Decir y recomendar a todos que estudien el tema 11 que tienes publicado sobre Recordset pues ha sido la clave para entender lo que me avanzaste.

He puesto este código y funciona perfectamente

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    'Declaramos las variables
    Dim nomfiesta As String
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
        'Definimos las variables
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("CFestivos", dbOpenSnapshot)
        'Nos movemos al primer registro
    rst.MoveFirst
        'Capturamos el nombre de la fiesta
    nomfiesta = rst.Fields(1).Value
        'Mostramos el MsgBox con la información y pasamos el valor al campo
    MsgBox "Hoy es el dia " & nomfiesta, vbInformation, "INFO"
    Me.txtdia.Value = nomfiesta
        'Cerramos conexiones y liberamos memoria
    rst.Close
    dbs.Close
    Set rst = Nothing
    Set dbs = Nothing
 
End Sub


Muchísimas gracias por tu ayuda!
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
Imágen de perfil de Neckkito

DLOOKUP con fechas

Publicado por Neckkito (1104 intervenciones) el 07/05/2015 18:12:01
Hola Antonio!

¿Has testeado qué pasaría si en el día actual no hubiera ninguna fiesta?

Ya me dirás

Neckkito
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