Contar tiempo transcurrido entre varias fechas

Tengo 2 campos código y fecha; en código tengo varias registros repetidos y con varias fecha distintas, y necesito crear un campo nuevo(diferencia) y saber el tiempo en días que toma entre una fecha y otra, hasta que cambie el código ejemplo:

Código fecha diferencia

1 11/11/2012 0

1 15/11/2012 4

1 25/11/2012 10

2 12/12/2012 0

2 18/12/2012 6

2 20/12/2012 2

1 Respuesta

Respuesta
1

Es bastante simple en access... Simplemente tienes que restar la fecha menor de la mayor e indicarle que lo haga en formato numérico... algo así:

Días = Format(Fcha2 - Fcha1, "#")

Sil lo prefieres, también puedes hacer una función que te indique los días... más o menos así:

Function TestFechas(Fcha1 As Date, Fcha2 As Date) As Integer
TestFechas = Format(Fcha2 - Fcha1, "#")
End Function

gracias por responder rápidamente! mira no soy muy bueno en access pero traté de hacerlo en una consulta y no me resulta....

mi necesidad es crear un campo nuevo llamado diferencia en donde vaya contando entre fechas y fecha pero en cada cambio de código, vuelva a contar con la fecha que sigue... ,osea la primera fecha de un código nuevo siempre será 0, y de ahí irá contando el tiempo de la segunda fecha con la tercera y la tercera fecha con la cuarta hasta que cambie nuevamente el código y comience con nuevamente con 0..

parece que no me supe explicar....

muchas gracias

Lo que pretendes, no se puede hacer en una simple consulta... pero si combinas una consulta donde tienes el campo de suma resultado de los días, junto con un informe donde tengas agrupado por código y crees un campo sumatorio de días, funcionará sin problemas...

En la consulta, solo tienes que crear un campo nuevo con las siguientes caracteristicas:

ResultadoDias: Format(Fcha2 - Fcha1, "#")

-Con esto, conseguirás que te salga una nueva columna llamada "ResultadoDias" donde te sale la diferencia entre fecha2 y fecha1 en días.

Ahora creas un informe y en la pestaña "Diseño" (Access 2007/2010) tienes una opción que pone "Agrupar y Ordenar". -Ahí le debes indicar que agrupe por código y que debe tener una sección de pie de sección.

Y en la sección de pié, creas un campo con las siguientes características:

Nombre (del control): TotalHrs_Codigo

Origen del control:: =SUMA(ResultadoDias) -No olvides poner el signo igual aquí)

Con esto, ya debería salir el resultado que deseas... Solo me queda indicarte que debes tener el campo "ResultadoDias" en la sección "Detalle" del informe.- Si no quieres que aparezca, cambiale la propiedad "Visible" a "NO"

Un saludo y espero haber sido de ayuda... no olvides finalizar y puntuar mi respuesta si consideras que está todo aclarado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas