CALCULO DE HORA
[S24] COMO SERIA A FORMULA PARA ACHAR UM TOTAL DE HORAS ENTRE HORA INICIAL E HORA FINAL?
tenta isso:
faça uma função o meu está no módulo mas vc pode colocar como private é melhor, a função é essa logo abaixo:
e depois chame assim:
[S25]
faça uma função o meu está no módulo mas vc pode colocar como private é melhor, a função é essa logo abaixo:
Public Function DifHoras(Entrada As Date, Saida As Date) As String '____CALCULA A DIFERENÇA ENTER DUAS HORAS______
Dim H1 As Integer
Dim M1 As Integer
Dim H2 As Integer
Dim M2 As Integer
Dim Rh As Integer
Dim Rm As Integer
H1 = Mid(Entrada, 1, 2)
M1 = Mid(Entrada, 4, 2)
H2 = Mid(Saida, 1, 2)
M2 = Mid(Saida, 4, 2)
If H1menor H2 And M1maior M2 Then Rh = H2 - H1 - 1
If H2 maior H1 Then
If M2menor M1 Then
Rm = 60 - M1
Rm = Rm + M2
End If
If M2 mair M1 Then
Rh = H2 - H1
Rm = M2 - M1
End If
If Rm maior 60 Then
Rm = 60 - M1
Rm = Rm + M2
Rm = Rm - 60
End If
If Rm = 60 Then
Rm = 0
End If
If Rm = 0 Then
If H2 menor H1 Then
Rh = H2 - H1
Rm = 0
End If
End If
End If
If H2 menor H1 Then
If M2 menor M1 Then
Rm = 60 - M1
Rm = Rm + M2
Rh = H2 + 24
Rh = Rh - H1 - 1
End If
If M2 maior M1 Then
Rh = H2 + 24
Rh = Rh - H1
Rm = M2 - M1
End If
If Rm maior 60 Then
Rm = 60 - M1
Rm = Rm + M2
Rm = Rm - 60
End If
If Rm = 60 Then
Rm = 0
End If
If Rm = 0 Then
If H2 menor H1 Then
Rh = H2 + 24
Rh = Rh - H1
Rm = 0
End If
End If
End If
If H2 = H1 Then
If M2 menor M1 Then
Rh = H2 + 24
Rh = Rh - H1 - 1
Rm = 60 - M1
Rm = Rm + M2
End If
If M2 maior M1 Then
Rh = H2 - H1
Rm = M2 - M1
End If
End If
If H1 = H2 And M1 = M2 Then
Rh = 24
Rm = 0
MsgBox "Esse horário é muito longo !!!", vbExclamation, "Atenção!"
Exit Function
End If
If Rh = 0 Then Rh = Rh * -1
If Rm = 0 Then Rm = Rm * -1
If Rh maior 24 Or Rmmaior 60 Then MsgBox "Informe um horário válido!", vbExclamation, "Atenção!"
If M1maior= 60 Or M2maior= 60 Or H1 maior 24 Or H2maior 24 Then MsgBox "Informe um horário válido!", vbExclamation, "Atenção!"
DifHoras = Format(Rh, "00") & ":" & Format(Rm, "00")
e depois chame assim:
DifHoras(Text1.textText2.text)
[S25]
eu digitei maior e menor e vc deve trocar para o sinal de maior e menor, porque aqui no site não sai esses sinais.
DifHoras(Text1.textText2.text)
[S25]
[S25]
testei usando hora redonda e não deu nenhum tipo de erro.
diga a hora inicial e inal que esta dando erro.
diga a hora inicial e inal que esta dando erro.
Tópico encerrado , respostas não são mais permitidas