SOMA DE TEMPOS
alguem sabe como eu posso somar tempo?
por exemplo: uma lista q cada item tem um tempo em minutos:
6:30
1:90
3:28
0:90
como eu faço pra somar tudo?
vlw
por exemplo: uma lista q cada item tem um tempo em minutos:
6:30
1:90
3:28
0:90
como eu faço pra somar tudo?
vlw
Tem que tranformar tudo em minutos e depois somar tudo e converter denovo em horas...
Se o resultado for passar 24 Horas ai deve-se calcular e formatar o resultado final em texto que ai vc conseguirá;;;
se quizer posso te mandar um exemplo:
Se o resultado for passar 24 Horas ai deve-se calcular e formatar o resultado final em texto que ai vc conseguirá;;;
se quizer posso te mandar um exemplo:
sim eu quero um exemplo pra facilitar mas o formato é em minutos:
6 min. e 30 seg. + 1 min. e 90 seg. ....etc...
6 min. e 30 seg. + 1 min. e 90 seg. ....etc...
As funções abaixo fazem a soma de tempos e mostra o resultado formatado denovo em horas.. por exemplo 31:23:52
Tenta ai e se precisar de ajuda me manda msg interna!!
Private Function Soma_Horas(XHORA)
Rem ===================================
Rem Calcula as horas trabalhadas semana
Rem ===================================
'xhoras = 0: xminutos = 0: xsegundos = 0
'xhora1 = "52:32:30"
If Abs(xsegundos) < 60 Then
xsegundos = xsegundos + Abs(Mid$(XHORA, 7, 2))
If Abs(xsegundos) >= 60 Then
xsegundos = xsegundos - 60
xminutos = xminutos + 1
End If
End If
If Abs(xminutos) < 60 Then
xminutos = xminutos + Abs(Mid$(XHORA, 4, 2))
If xminutos >= 60 Then
xminutos = xminutos - 60
xhoras = xhoras + 1
End If
End If
xhoras = xhoras + Abs(Mid$(XHORA, 1, 2))
XSOMA_HORA = Format$(xhoras, "00") & ":" & Format$(xminutos, "00") & ":" & Format$(xsegundos, "00")
End Function
Function DividirHoras(Hora As String, Divisao As Integer) As String
Dim h1 As Long, m1 As Long, s1 As Long, t1 As Long
XHR = Split(Hora, ":")
h1 = XHR(0)
m1 = XHR(1)
s1 = XHR(2)
t1 = s1 + (m1 * 60) + (h1 * 3600)
t1 = t1 \ Divisao
h1 = t1 \ 3600
t1 = t1 - (h1 * 3600)
m1 = t1 \ 60
s1 = t1 - (m1 * 60)
DividirHoras = Format(h1, "00") & ":" & Format(m1, "00") & ":" & Format(s1, "00")
End Function
Function Horas_Segundos(Hora) As Integer
Dim h1 As Long, m1 As Long, s1 As Long, t1 As Long
XHR = Split(Hora, ":")
h1 = XHR(0)
m1 = XHR(1)
s1 = XHR(2)
' t1 = s1 + (m1 * 60) + (h1 * 3600) 'Transforma Hora+Min+Seg em Segundos
t1 = Round((s1 / 60) + m1 + (h1 * 60), 0) 'Transforma Hora+Min+Seg em Minutos
Horas_Segundos = t1
End Function
Tenta ai e se precisar de ajuda me manda msg interna!!
Private Function Soma_Horas(XHORA)
Rem ===================================
Rem Calcula as horas trabalhadas semana
Rem ===================================
'xhoras = 0: xminutos = 0: xsegundos = 0
'xhora1 = "52:32:30"
If Abs(xsegundos) < 60 Then
xsegundos = xsegundos + Abs(Mid$(XHORA, 7, 2))
If Abs(xsegundos) >= 60 Then
xsegundos = xsegundos - 60
xminutos = xminutos + 1
End If
End If
If Abs(xminutos) < 60 Then
xminutos = xminutos + Abs(Mid$(XHORA, 4, 2))
If xminutos >= 60 Then
xminutos = xminutos - 60
xhoras = xhoras + 1
End If
End If
xhoras = xhoras + Abs(Mid$(XHORA, 1, 2))
XSOMA_HORA = Format$(xhoras, "00") & ":" & Format$(xminutos, "00") & ":" & Format$(xsegundos, "00")
End Function
Function DividirHoras(Hora As String, Divisao As Integer) As String
Dim h1 As Long, m1 As Long, s1 As Long, t1 As Long
XHR = Split(Hora, ":")
h1 = XHR(0)
m1 = XHR(1)
s1 = XHR(2)
t1 = s1 + (m1 * 60) + (h1 * 3600)
t1 = t1 \ Divisao
h1 = t1 \ 3600
t1 = t1 - (h1 * 3600)
m1 = t1 \ 60
s1 = t1 - (m1 * 60)
DividirHoras = Format(h1, "00") & ":" & Format(m1, "00") & ":" & Format(s1, "00")
End Function
Function Horas_Segundos(Hora) As Integer
Dim h1 As Long, m1 As Long, s1 As Long, t1 As Long
XHR = Split(Hora, ":")
h1 = XHR(0)
m1 = XHR(1)
s1 = XHR(2)
' t1 = s1 + (m1 * 60) + (h1 * 3600) 'Transforma Hora+Min+Seg em Segundos
t1 = Round((s1 / 60) + m1 + (h1 * 60), 0) 'Transforma Hora+Min+Seg em Minutos
Horas_Segundos = t1
End Function
Tópico encerrado , respostas não são mais permitidas