Retornar a diferença do tempo em minutos por extenso
Esta função realiza uma diferença de minutos para o tempo no instante e retorna o resultado em Minutos, Horas, Dias, Meses e Anos dependendo do tamanho em minutos passados.
Esta função sempre fará o arredondamento dos minutos
Por exemplo:
- Se for passado 59 a função retornará "59 minutos"
- Para 60 o retorno será "1 hora"
- Para 62 o retorno também será "1 hora"
- Para 1440 o retorno será "1 dia"
- Para 43200 o retorno será "1 mês"
- Para 518400 o retorno será "1 ano"
Esta função pode ser muito útil na hora de mostrar, por exemplo, a quanto tempo atrás foi a data da última alteração de um arquivo, ou a quanto tempo foi a data do último login. As utilizações são variadas.
'-----------------------------------------------------
'Funcao: getTempoExtenso(ByVal Tempo)
'Sinopse: Descreve o tempo por extenso em relação ao
' tempo atual
'Parametro(s):
' Tempo: Tempo expressos em Bytes
'Retorno: String
'Autor: Gabriel Fróes - www.codigofonte.com.br
'-----------------------------------------------------
Function getTempoExtenso(ByVal Tempo)
On Error Resume Next
Dim Retorno
Dim Agora
Agora = Now()
Tempo = DateDiff("n", Tempo, Agora)
'Response.Write "<br>Agora:" & Agora
'Response.Write "<br>Tempo:" & Tempo
If IsNumeric(Tempo) Then
If Tempo <= 60 Then
Retorno = Tempo & " minuto"
If Tempo > 1 Then
Retorno = Retorno & "s"
End If
ElseIf Tempo > 60 And Tempo <= 1440 Then
Tempo = Round(Tempo/60, 0)
Retorno = Tempo & " hora"
If Tempo > 1 Then
Retorno = Retorno & "s"
End If
ElseIf Tempo > 1440 And Tempo <= 43200 Then
Tempo = Round((Tempo/60)/24, 0)
Retorno = Tempo & " dia"
If Tempo > 1 Then
Retorno = Retorno & "s"
End If
ElseIf Tempo > 43200 And Tempo <= 518400 Then
Tempo = Round(((Tempo/60)/24)/30, 0)
Retorno = Tempo & " mês"
If Tempo > 1 Then
Retorno = Tempo & " meses"
End If
ElseIf Tempo > 518400 Then
Tempo = Round((((Tempo/60)/24)/30)/12, 0)
Retorno = Tempo & " ano"
If Tempo > 1 Then
Retorno = Retorno & "s"
End If
End If
Else
Retorno = "n/a"
End If
'Retornando a função
getTempoExtenso = Retorno
End Function
'EXEMPLO DE CHAMADA
Response.Write "Exemplo de Chamada:" & getTempoExtenso(1440)
%>