Desenvolvimento - Office

Manipulando data e hora no Excel

O que mais fascina no Excel é a simplicidade. As soluções, em geral, envolvem o uso de fórmulas relativamente fáceis. Um bom exemplo é a manipulação de datas e horas.

por Fábio Vianna



O que mais fascina no Excel é a simplicidade. As soluções, em geral, envolvem o uso de fórmulas relativamente fáceis. Um bom exemplo é a manipulação de datas e horas.

Na planilha abaixo, quero controlar as horas de entrada e saída de funcionários de minha empresa. Tudo estaria bem se não fosse a célula H10, onde o número "estourou".



Naquela data, o colaborador entrou às 8h30 e só saiu às 2 da manhã do dia seguinte. Como na fórmula calculamos a diferença de horas, "na cabeça" do Excel o cálculo foi o seguinte: 2h – 20h30 = horário negativo.

Nesse caso, é necessário configurar uma opção que não funciona se não estiver marcada em todas as máquinas que usarem este arquivo. Para nós, é óbvio que a pessoa saiu no dia seguinte. Para o Excel, não, pois informamos naquela célula apenas um horário, e não o dia e a hora de saída.

O Excel possui um contador de datas interno que começa em 1 na data 1/1/1900. Peguemos como exemplo o dia 15/11/2005. Para o Excel, ele equivale ao número 38.671. Como ninguém lê datas desta forma, formatamos a célula para enxergarmos o dia, mês e ano, somente mês e ano, ou somente mês (são dezenas de possibilidades - na célula C2 do exemplo acima, formatei para aparecer o mês; na B8 em diante somente o dia; na C8 em diante somente o dia da semana, etc).

As horas
No Excel, as horas são tratadas como um número decimal entre 0 e 1. Por exemplo, meio-dia é 0,50, meia-noite é 1. Na planilha acima, a pessoa entrou para trabalhar às 0,354166666666667 (às 8h30) e saiu às 0,0833333333333333 (às 2). Por isso, a diferença foi negativa.

Mas notem que em nenhum momento informamos que a pessoa entrou às 0,3541 do dia 3 e saiu às 0,08 do dia 4. Como resolveríamos isso, de forma bem simples? Fazendo o que, normalmente, as pessoas desconsideram justamente por ser a mais simples: somando o número inteiro, referente ao dia, ao decimal, referente à hora.


Então, para ficar ideal, colocamos que a pessoa entrou em 38659,3541 e saiu em 38660,08. Agora basta subtrair um do outro que temos o tempo real trabalhado.

Nem preciso dizer que devemos formatar estas células para mostrarem apenas horas (lembre-se apenas de que a hora deve ser informada com o formado dd/mm/aa hh:mm).

Para finalizar:

1) Na hora de formatar as horas totais no mês (célula C3 acima), formate com a opção de horas maiores de 24, senão o Excel mostra no máximo 24 horas. Na formatação personalizada coloque [hh]:mm;

2) Na hora de multiplicar as horas pelo valor/hora, lembre-se de multiplicar por 24, afinal o Excel mostra horas entre 0 e 1. Se a pessoa trabalhou 1 dia, na verdade foram 24 horas. Se não multiplicar por 24, ela receberia o valor de uma hora (1 x salário/hora) e não o total (1 x 24 x salário/hora).
Fábio Vianna

Fábio Vianna - Bacharel em Administração de Empresas pela EAESP/FGV, é consultor financeiro há mais de 10 anos e já treinou mais de 2.500 executivos nas áreas de projeções financeiras, análise de projetos, cálculo do preço de venda, orçamento empresarial, avaliação de empresas, análise de demonstrações financeiras e utilização de recursos avançados de Excel. É Sócio-Diretor do Centro de Excelência em Planilhas®.