Notifications
Clear all

Calculo com horários que estão em variáveis

5 Posts
2 Usuários
0 Reactions
1,149 Visualizações
(@finaljustice)
Posts: 91
Trusted Member
Topic starter
 

Boa tarde,

Montei uma userform que contém "relógio" em uma textbox. Basicamente é uma userform para carimbar a hora de início e fim de uma operação, por isso o relógio. Estou puxando o horário que estár "rodando" na textbox e jogando em uma variável e no final da operação pegando o horário da mesma maneira e salvando em uma variável para finalmente fazer a diferença entre a hora final com a hora inicial, ou seja o tempo de duração....
Para marcar a hora de início (está funcionando perfeitamente):

cintime = Format(UserForm1.TextBox4, "hh:mm:ss")

Para marcar a hora final (também funcionando):

coutime = Format(UserForm1.TextBox4, "hh:mm:ss") 

Agora aonde estou com problema, como devo fazer para fazer a diferença entre esses dois horários? Para mim o que seria "óbvio" foi o seguinte (mas não deu certo):

ctotal = Format(coutime - cintime, "hh:mm:ss")

Deve ser a maneira que estou escrevendo o código, e não achei algo parecido no fórum.

Obrigado pela atenção.
Att
Luis

 
Postado : 30/01/2015 2:18 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

Em vez de apenas formatar o que vc recebe o userform, experimente converter, por exemplo:

cintime = CDate(UserForm1.TextBox4)

Ou

cintime = Format(CDate(UserForm1.TextBox4), "hh:mm:ss")

Na falta do teu modelo, eu testei a sub abaixo e funcionou:

Sub teste()

cintime = CDate("10:00:08")

coutime = CDate("12:05:05")

ctotal = Format(coutime - cintime, "hh:mm:ss")

End Sub

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 30/01/2015 2:25 pm
(@finaljustice)
Posts: 91
Trusted Member
Topic starter
 

Obrigado por responder,
infelizmente não consegui fazer funcionar fazendo as alterações que você sugeriu.
Segue o que estou fazendo para um amigo meu, basicamente é para cronometrar o tempo executando trabalhos.
Obrigado.
Luis

Módulo 1 Sub Clockit é a principal, o resto é "lixo"

 
Postado : 30/01/2015 2:46 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

Vc estava declarando as variáveis As variant

eu declarei as Date e não tive problemas

Public cintime As Date
Public coutime As Date
Public ctotal As Date

PS: vc está jogando o mesmo valor para cintime e para coutime, então, o resultado será sempre 0.

Lembre-se de AGRADECER aos que te ajudaram, e de marcar o tópico como [Resolvido]
Gente que cuida de gente.

Gilmar

 
Postado : 30/01/2015 3:01 pm
(@finaljustice)
Posts: 91
Trusted Member
Topic starter
 

Vc estava declarando as variáveis As variant

eu declarei as Date e não tive problemas

Public cintime As Date
Public coutime As Date
Public ctotal As Date

PS: vc está jogando o mesmo valor para cintime e para coutime, então, o resultado será sempre 0.

Perfeito, fiz a alteração que você disse e funcionou perfeitamente!
Só parece que estou pegando o mesmo valor pois vem da mesma textbox, mas ela está sendo atualizada por segundo!

Obrigado!
Att,
Luis

 
Postado : 30/01/2015 3:12 pm