Calcular antigüedad en el momento de la consulta ACCESS

Necesito hacer una suma de períodos de tiempo, el último de los cuales termine en el momento exacto de la consulta. Lo máximo que he conseguido es hacer que ese último período termine en el momento de la introducción de los datos.

1 respuesta

Respuesta
1

No tengo muy claro lo que pretendes hacer, pero quizás sería algo como esto:

"SELECT * FROM [TABLA] WHERE [FCHA_EN_TABLA]<=" & cDate(Date())

Con esto obtendrás la relación de registros cuya fecha sea inferior o igual a la fecha de hoy

-Si la fecha es formato "día/Mes/año Hora:Minutos:segundos", entonces te seleccionará hasta todos los registros hasta el mismo segundo de la consulta...

Un saludo y espero haber sido de ayuda..- Por favor, no olvides finalizar y puntuar mi respuesta si consideras que está totalmente respondida...

Estoy en una empresa donde la gente ha trabajado en períodos independientes, y necesito saber la suma de los tiempos. Por ejemplo:

01/01/2000 - 01/01/2001 = 1año

01/06/2001 - 01/01/2002 = 6 meses = 0'5 años

01/01/2005 - HOY = ?????

Necesito saber como calcular el "?????" y sumarlo a los períodos anteriores.

Mediante una consulta no se puede hacer eso... pero si mediante un informe basado en una consulta (que al fin y al cabo, lo que tu necesitas es el informe).

Imagino que tienes una fecha de inicio de contrato y una fecha de fin, entonces tienes que calcular un tercer campo, que es la diferencia entre FchaFinal - Fecha Inicio

Cuando no exista Fecha final, la reemplazas por la fecha actual... y asunto arreglado.

Ten en cuenta una cosilla... debes definir como numérico el campo de cálculo (no de fecha) para la suma de las fechas y mostrar el resultado con el formato de campo.

Para ayudarte un poco más, el código que tendrías que poner en el evento "Al dar Formato" del apartado "Detalle" en el informe sería muy similar a este:

Private Sub EncabezadoDelGrupo1_Format(Cancel As Integer, FormatCount As Integer)

Dim CampoResultado as single

If IsNull(Me.FechaFinal) then 'En caso de que la fecha final sea nula

FechaFinal = date() 'La ajusta como la fecha de ahora mismo

End if

CampoResultado = FechaFinal-FechaInicial

End Sub

Muchísimas gracias. Me tuve que romper un poco el coco para acabar de clavarlo, pero era justo lo que necesitaba. De verdad muchas gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas