Segundos em hh:mm:ss no Excel
24/09/2007
Se você está ou já esteve envolvido com atividades relacionadas à programação, provavelmente já passou por pelo menos uma situação em que, dado um tempo de processamento de uma rotina ou job em segundos, era necessário ilustrar tal tempo formatado em horas, minutos e segundos (HH:MM:SS).
Uma maneira bem simples e rápida de fazer isso através do próprio Microsoft Excel é a combinação de algumas de suas funções básicas: TEMPO, INT e MOD.
Imagine que uma célula no Excel contenha o valor do tempo total de execução de uma rotina, vamos dizer, a célula D7 com 33391 segundos. Dada esta premissa, basta dizer que as funções do Excel que eu citei nos permitirão trabalhar com algumas premissas da matemática:
Para calcular o total de horas contidas em 33391 segundos, basta dividirmos esta quantidade por 3600 — pois uma hora possui 60 minutos e por sua vez, cada minuto, 60 segundos: 60 x 60 = 3600 —, nos atentando à parte inteira desta divisão. A parte inteira de um número pode ser obtida no Excel pela função INT. Assim, as horas podem ser dadas por:
=INT(D7/3600)
No caso do cálculo dos minutos, o raciocínio continua ocorrendo no campo das divisões. Ainda considerando os 33391 segundos da célula D7, dividiremos o total por 60, objetivando o total de horas. Em seguida, precisaremos do resto da divisão do valor por 60, para chegarmos aos minutos. O resto da divisão, no Excel, é representado pela função MOD. Assim sendo, tais minutos serão:
=MOD(INT(D7/60);60)
Finalmente, os segundos. Seu cálculo é mais simples, pois dada a divisão utilizada para obtermos o total de horas, os segundos serão justamente o resto desta conta. Assim sendo, teremos:
=MOD(D7;60)
Já a função TEMPO permite, após o fornecimento dos parâmetros hora, minuto e segundo, obter um valor de string formatada como hora. Esta será a função-chave nesta transformação, pois englobará todos os cálculos anteriores:
=TEMPO(INT(D7/3600);MOD(INT(D7/60);60);MOD(D7;60))
Se tudo correu bem, a célula que você escolheu para receber a string formatada como HH:MM:SS, para este exemplo, estará exibindo 09:16:31. Simples assim.
Popularity: 18% [?]

No. 1 — 27/12/2007 @ 13:48
Olá Daniel,
Esta fórmula (=TEMPO(INT(D7/3600);MOD(INT(D7/60);60);MOD(D7;60)) só serve para números grandes como o sugerido 33391.
Tentei colocar 100 por exemplo e o valor informado foi 12:01:40 AM o que não foi o resultado esperado.
Estou precisando trabalhar com tempos no Excel e estou encontrando dificuldades, tais como:
Transformar 0,519042 em 00:00:30,?? (quase 32 segundos)
Transformar 6,4 minutos por exemplo em 00:06:24
Multiplicar 1000 por 0:11:40 e obter o valor total de horas desta multiplicação e depois encontrar 85% destas horas.
Mesmo que não consiga efetuar os problemas acima ficarei grato pelas dicas aqui informadas.
Um abraço, boas festas e um ótimo 2008