CALCULO HORAS
estou desemvolvendo um programas de movimentos. e tenho que calcular horas.Tenho que calcular horas extras. Supomos que 1 horas custa 2,80 euros. e nao consigo obter o resultado de for 30 minutos que haviam de ser 1, 40 euros .so da este resultado se eu meter 50 minutos. Como resolvo isto ?[S38]
DÃÅ uma olhada nesse link, faça uma pesquisa sobre o assunto antes de postar.T+
http://www.vbmania.com.br/vbmania/vbmdetail.php?varID=1033&TxtSearch=calculando%20hora&CmbSort=&varPagina=1
http://www.vbmania.com.br/vbmania/vbmdetail.php?varID=1033&TxtSearch=calculando%20hora&CmbSort=&varPagina=1
Mas este link não tem nada a haver com isto
para este caso, você precisa de um retorno centesimal da diferenca de horas. Deve considerar também a data em questão:
Neste exemplo que fiz aqui correndo, usei o formato "dd/mm/yyyy HH:MM:SS" para fazer o calculo. Por exemplo
MsgBox TotalHora(Txt_H_Inicial, Txt_H_Final)
Private Function TotalHora(hInicial As Date, Hfinal As Date) As Double
Dim h As Long, m As Double, s As Long
s = DateDiff("s", hInicial, Hfinal)
h = s / 3600
m = ((s - (h * 3600)) / 60) / 60
TotalHora = h + m
End Function
Neste exemplo que fiz aqui correndo, usei o formato "dd/mm/yyyy HH:MM:SS" para fazer o calculo. Por exemplo
MsgBox TotalHora(Txt_H_Inicial, Txt_H_Final)
Veja, o retorno é calculado na moeda que foi passada:
Basta você passar como parametro o tempo em texto, no formato hh:min
Msgbox ValorTempo("0:30", 2.80)
Private Function ValorTempo(QtdeHoras As String, ValorHora As Double) As Double
Dim dValorMinuto As Double
Dim lQtdeMinutos As Long
dValorMinuto = ValorHora / 60
lQtdeMinutos = DateDiff("n", Date, Date + CDate(QtdeHoras))
ValorTempo = lQtdeMinutos * dValorMinuto
End Function
Basta você passar como parametro o tempo em texto, no formato hh:min
Tópico encerrado , respostas não são mais permitidas