Access - Formato de fechas Europeo - Americano

 
Vista:

Formato de fechas Europeo - Americano

Publicado por Jaime (27 intervenciones) el 05/01/2012 10:12:06
Buenas,
Tengo dentro del código una función Dlookup para buscar un valor dentro de una tabla filtrando por un campo de fecha.
La función es la siguiente:
DLookup("ID_ASESOR", "ACTIVIDAD", "[FECHA_ACTIVIDAD] = #" & Me.txtFechaProgramada.Value & "#")
Hasta el 31 de diciembre me ha funcionado perfectamente pero desde el 1 de enero ya no. Después de darle mil vueltas he descubierto que el problema es que en la tabla "ACTIVIDAD", la fecha que se guarda en el campo "FECHA_ACTIVIDAD" no se está guardando en formato europeo (dd/mm/aaaa) sino que se guarda en formato americano (mm/dd/aaaa).
Por eso hasta el 31 de diciembre, si yo buscaba la fecha 31/12, Access se daba cuenta de que 31 no podía ser el mes y cambiaba la posición entre día y mes y sí funcionaba. Sin embargo en Enero esto ya no sucede, así que si quiero buscar el día 5 de enero, lo que tengo que escribir en el campo txtFechaProgramada es 1 de mayo para que me lo encuentre.
He comprobado que donde está mal es en la tabla y no en el campo, porque si hago búsquedas poniendo el valor de fecha a pelo, tipo:
DLookup("ID_ASESOR", "ACTIVIDAD", "[FECHA_ACTIVIDAD] = #05/01/2012#")
también me lo hace mal, así que está claro que donde se almacena el valor en formato americano es en la tabla ACTIVIDAD. Lo curioso es que si entras dentro de la tabla ACTIVIDAD, las fechas se ven con el formato correcto...
¿cómo puedo solucionar esto para que esta búsqueda me funcione?
Estoy desesperado con esto...
Muchas 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

Formato de fechas Europeo - Americano

Publicado por Emilio (232 intervenciones) el 05/01/2012 16:00:17
Intentalo así:

DLookup("ID_ASESOR", "ACTIVIDAD", "[FECHA_ACTIVIDAD] = #" & Format([txtFechaProgramada], "mm/dd/yyyy") & "#")

ya comentas, 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

Formato de fechas Europeo - Americano

Publicado por Jaime (27 intervenciones) el 05/01/2012 16:46:07
Muchísimas gracias, Emilio

funciona a la perfección. Parece mentira lo sencilla que era la solución...

Lo que no acabo de entender es por qué ha ocurrido el cambio de formato de fecha en la tabla donde guardo los datos (tengo la BD dividida en 2, una con las tablas y otra con informes y formularios) ¿es algo normal o es que yo he metido la pata por algún lado?
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

Formato de fechas Europeo - Americano

Publicado por Emilio (232 intervenciones) el 05/01/2012 17:59:28
Siempre te a hecho lo mismo tal vez no te dabas cuenta, es que como access es gringo solo entiende en Formato americano mm/dd/año, por eso hay que tratar a las fechas así o la otra posibilidad es convertirla en número, pero mejor leer esto que tiene Taribo:

http://elmundomagicodeltaribo.blogspot.com/2009/07/fechas-tal-como-se-usan-en-access.html

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