Jump to content
José luis leal

[Resolvido] Pausa Para Almoço

Recommended Posts

José luis leal

Boa tarde! Desde já os meus parabéns pela vossa disponibilidade para ajudar.

Cnsegui este código vba aplicado no exemplo calculaHoras_2009 e faz tempo que ando a procura de algo muito parecido, na realidade este é o que mais se aproxima da solução que procuro, (apenas) precisava que fosse incluída uma pausa para almoço. Tipo entrada 08:00:00, p/Almoço 12:30:00

Inicio Período da Tarde 13:30:00, Fim 18:00:00.

Bom Fim de Semana e Muito Obrigado

 Option Compare Database

Public Function GetElapsedTime(interval)
' fonte Microsoft
' http://support.microsoft.com/kb/210604/pt-br
Dim totalhours As Long, totalminutes As Long, totalseconds As _
    Long
Dim days As Long, hours As Long, minutes As Long, Seconds As Long

days = Int(CSng(interval))
totalhours = Int(CSng(interval * 24))
totalminutes = Int(CSng(interval * 1440))
totalseconds = Int(CSng(interval * 86400))
hours = totalhours Mod 24
minutes = totalminutes Mod 60
Seconds = totalseconds Mod 60

GetElapsedTime = days & " Dias " & hours & " Horas " & minutes & _
" Minutos " & Seconds & " Segundos "

End Function

Public Function HoraDecimal(dHora As Variant)
''Converte data/hora para formato decimal
''Autor: Carlos Moura - crpmoura@ig.com.br
Dim lngDia As Long, intervalo As Double
Dim H1  As Long, H2 As Double, dblHora As Double

If VarType(dHora) < 7 And VarType(dHora) > 5 Then Exit Function

 intervalo = CDbl(dHora)
 lngDia = Int(intervalo)
 H1 = lngDia * 24
 dblHora = (intervalo - lngDia)
 H2 = dblHora * 24
 HoraDecimal = Format(H1 + H2, "#0.00")

End Function

Edited by José luis leal

Share this post


Link to post
Share on other sites
tiago.f

Olá José,

gostava muito de ajudar mas não consigo perceber o que queres.

Queres que seja considerada uma pausa para almoçar.....no quê exactamente?

O código que mostras tem 2 funções:

- uma que recebe um número decimal (ex: 1,5) e devolve um texto que representa o tempo (ex: "1 dias 12 horas 0 minutos 0 segundos"

- outra que, me parece à partida, faz o contrário.

Resumindo: o código que passas aqui não faz sentido para a pergunta que tens. Podes explicar melhor o que pretendes?

Já agora, o teu post aqui:

https://www.portugal-a-programar.pt/topic/72632-incluir-pausa-de-almoco-e-limitar-dia-util-a-800-horas/

calculo que seja o mesmo problema.

Sugiro ao moderador que junte estes 2 tópicos.

Cumprimentos

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.