Bom dia galera.
Tenho um sistema de cálculo de horas extras que funciona perfeitamente. Só que preciso incluir cálculo para adicional noturno.
Tenho um campo para hora de entrada: Hora_Ent e um para hora de Saída: Hora_Sai e um campo: Quant_Ad_Not
O que estou desenvolvendo já faz os cálculos das horas extras mesmo se for após 24 horas, o que preciso é que nesse campo (Quant_Ad_Not) após digitar a hora de entrada e hora de saída da hora extra. (Ex: 19:30 ás 03:30). Ele pegue somente o horário das 22:00 até ás 05:00 se for o caso) e jogue nesse campo.
O meu pega a hora cheia: 08:00 hs total. Quando na verdade deveria ser: 05:00 noturnas.
Tentei utilizar este código, mas não dá certo:
Obrigado.
Tenho um sistema de cálculo de horas extras que funciona perfeitamente. Só que preciso incluir cálculo para adicional noturno.
Tenho um campo para hora de entrada: Hora_Ent e um para hora de Saída: Hora_Sai e um campo: Quant_Ad_Not
O que estou desenvolvendo já faz os cálculos das horas extras mesmo se for após 24 horas, o que preciso é que nesse campo (Quant_Ad_Not) após digitar a hora de entrada e hora de saída da hora extra. (Ex: 19:30 ás 03:30). Ele pegue somente o horário das 22:00 até ás 05:00 se for o caso) e jogue nesse campo.
O meu pega a hora cheia: 08:00 hs total. Quando na verdade deveria ser: 05:00 noturnas.
Tentei utilizar este código, mas não dá certo:
- Código:
Function totalHoraNoturna(Hora_Ent As Date, Hora_Sai As Date) As Long
Dim intHoraInicio As Integer
Dim intHoraFim As Integer
intHoraInicio = IIf(Hour(Hora_Ent) < 22 And Hour(Hora_Ent) > 6, 22, Hour(Hora_Ent))
intHoraFim = IIf(Hour(Hora_Sai) > 6 And Hour(Hora_Sai) <= 22, 6, Hour(Hora_Sai))
If intHoraInicio >= 22 Then
If intHoraFim > 22 Then
totalHoraNoturna = intHoraFim - intHoraInicio
Else
totalHoraNoturna = 24 - intHoraInicio + intHoraFim
End If
Else
totalHoraNoturna = intHoraFim - intHoraInicio
End If
Obrigado.