Quiero modificar esta fórmula que es de 24 horas un día de Jornada laboral para el siguiente día

Me gustaría cambiar esta fórmula de un día de jornada laboral a otro día, ejemplo hay empleados que entran a las 10 pm y salen a las 4,5 o 6 am

Public Function FncHorasTrabajo(LaHoraIni As Date, LaHoraFin As Date) As Double
If LaHoraIni < LaHoraFin Then  'Trabajo en el mismo día
        FncHorasTrabajo = DateDiff("n", LaHoraIni, LaHoraFin) / 60
ElseIf LaHoraIni = LaHoraFin Then
        FncHorasTrabajo = 0
Else
        FncHorasTrabajo = 24 + DateDiff("n", LaHoraIni, LaHoraFin) / 60
End If
End Function

1 Respuesta

Respuesta
2

O mucho me equivoco, o esa es una función mía sacada de la web de Neckkito... y si no, se le parece mucho, mucho. Y si estoy en lo cierto, en el mismo sitio, tienes explicado (en otras funciones) cómo lo tendrías que hacer.

La pista es incluir las fechas de entrada y salida al trabajo, montar una fecha completa, con fecha y hora, y realizar los cálculos (fecha-hora salida menos fecha-hora entrada)

Un saludo


De todas formas, esa función ya te realiza ese cálculo que quieres (en la parte del else), siempre que la hora de entrada y la de salida no difieran más de 24 horas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas