Access - Informe acces.Diferencia entre fechas

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Informe acces.Diferencia entre fechas

Publicado por luisa (34 intervenciones) el 09/03/2016 17:52:59
Hola
1. Tengo un informe de accesss 2007.
2. En él tengo dos campos. "FECHAINICIO" y "FECHAFINAL", que vienen de una tabla
3. Alguno de estos dos campos puede estar en blanco
4. En el mismo informe he creado un campo independiente llamado "DIFERENCIA"
5. En este campo(DIFERENCIA) he puesto en origen la siguiente expresión: =DifFecha("d",[FECHAINICIO],[FECHAFINAL]) por que deseo saber la diferencia entre fechas y es la que he visto por ahí.
6. No obtengo resultados.Dice que hay un error de sintaxis


Pregunta:

1.- ¿Por favor, alguien podría decirme qué hago mal, o cómo debo hacer para hacerlo bien?

2. Y si en vez de en días, la diferencia la quiero en meses o años, ¿por qué palabras debo cambiar la "d" de la expresión anterior?

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

Informe acces.Diferencia entre fechas

Publicado por JOSE (830 intervenciones) el 09/03/2016 18:42:54
Hola Luisa


1
2
3
4
5
6
7
8
9
10
11
12
13
14
´ Contar dias
dias = DateDiff("d", fechainicial, fechaactual)
´ Contar meses
meses = DateDiff("m", fechainicial, fechaactual)
´ Contar años
anios = DateDiff("yyyy", fechainicial, fechaactual)
´ Contar horas
horas = DateDiff("h", fechainicial, fechaactual)
´ Contar minutos
minutos = DateDiff("m", fechainicial, fechaactual)
´ Contar segundos
segundos = DateDiff("s", fechainicial, fechaactual)
´ Contar SEMANAS
segundos = DateDiff("ww", fechainicial, fechaactual)


SI COMO DICES QUE LA FECHA FINAL A VECES ESTA EN BLANCO

ANTES DE COMPARAR

IF ISNULL(FECHAFINAL) OR FECHAFINAL="" THEN LET FECH FINAL=NOW() : REM LE PONEMOS LA FECHA ACTUAL SI EL CAMPO NO ESTA INICIALIZADO O ESTA VACIO



Y ASI YA SE PUEDE COMPARAR



LOS AÑOS LO UNICO QUE HACE ES RESTAR EL AÑO INICIAL DEL FINAL, NO TIENE EN CUENTA EL MES OJO CON ESTO
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
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Informe acces.Diferencia entre fechas

Publicado por luisa (34 intervenciones) el 09/03/2016 22:35:50
Hola,Jose
Gracias.
Creo que hay algo que hago mal, porque no lo consigo.

En el campo donde deseo obtener la diferencia de fechas, yo pongo:

= DateDiff("m", FECHAINICIO, FECHAFINAL)

Pero me salta un mensaje que dice que la sintaxis no es válida.

No sé si se te ocurre algo.
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
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Informe acces.Diferencia entre fechas

Publicado por luisa (34 intervenciones) el 09/03/2016 23:12:46
Hola
Me contesto.
Con la siguiente funció(ojo,puntos y coma) me ha funcionado....salvo cuando hay campos vacíos

= DateDiff("m"; [FECHAINICIO]; [FECHAFINAL])

Cómo podría añadir a la función anterior, algo paar que recogiera tb los campos vacíos??
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
sin imagen de perfil

Informe acces.Diferencia entre fechas

Publicado por Enrique Heliodoro (1664 intervenciones) el 10/03/2016 04:08:17
No creo que desees que Access invente fechas (los resultados no seria veraces)

Propongo esto:

= IIF(IsDate(FECHAINICIO) And IsDate(FECHAFINAL]); DateDiff("m"; [FECHAINICIO]; [FECHAFINAL]); "Faltan datos")
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
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Informe acces.Diferencia entre fechas

Publicado por luisa (34 intervenciones) el 10/03/2016 08:08:02
Hola
Gracias, Enrique
Tras tu respuesta,veo que mi petición está mal expresada.
1. Yo quisiera saber el tiempo tnascurrido entre una fecha inicial y otra final.
2. En algúin caso, la fecha final está en blanco, con llo cual la fecha final sería la fecha actual.

Alguna idea??
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
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Informe acces.Diferencia entre fechas

Publicado por luisa (34 intervenciones) el 10/03/2016 08:45:49
Hola
Me contesto ami misma:
1
=DifFecha("m";[fechainicio];SiInm(EsNulo([fechafinal]);Fecha();[fechafinal]))

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar