Function JANVLX(DtI As Variant, DtF As Variant) As Variant
Dim TEMPO, ciclo As Double
TEMPO = Round((DtF - DtI) * 24 * 60, 0)
T = TimeSerial(Hour(DtI), Minute(DtI), 0)
ciclo = 0
For a = 1 To TEMPO
If T < "08:00:00" Or T > "20:00:00" Then
ciclo = ciclo
Else
ciclo = ciclo + 1
End If
If T = "23:59:00" Then
a = a + 2
T = TimeSerial(0, 0, 0)
End If
T = T + TimeSerial(0, 1, 0)
Next a
JANVLX = ciclo
Exit Function
End FunctionEsse código calcula o tempo entre dois campos de um registro: hora_entrada e hora_saida
O tempo entre os dois não poderá contar entre 20:00hrs e 8:00hrs do dia seguinte.
Exemplo: de 12/03/2011 19:00 até 13/03/2011 09:00 só contou 2:00hrs, pois entre 12/03/2011 20:00 e 13/03/2011 08:00 não pode contar tempo.
Sei que é possível gerar isso via código SQL, mas não estou conseguindo...
Quero chamar o campo resultante de "tempo".
Vocês podem me ajudar!?
Desde já, agradeço!



Postagens
Male
