08/02/2012

ad.

Como calcular diferença de datas (idade) no Excel

Veja também: como calcular a idade em dias, meses e anos no Excel.

O Excel, assim como as outras planilhas, transforma todas as datas em números. Assim, quando escrevo 25/03/1954, o programa transforma isso em 19808. Esse número é calculado considerando que 01/01/1900 é igual a 1.

Na verdade, as planilhas fazem isso pra facilitar todos os cálculos que fazemos com datas. Vamos imaginar que eu queira calcular a idade que alguém que nasceu em 25/03/1954 tinha em 19/10/2003.  Para fazer isso basta subtrair uma célula da outra, mas o que obtenho é um número inteiro, no caso 18105, que pra mim não significa nada. No entanto, esse é o intervalo de dias entra as duas datas.

Dica: para ver o valor númerica de uma data, clique com o botão direito sobre a célula, no menu que se abre escolha “Formatar célula…” e na categoria selecione “Geral”.

Para calcular a diferença em anos, basta dividir por 365. Bom, quase isso, como a cada quatro anos adicionamos um dia ao ano (viva o 29 de fevereiro!) vamos colocar 1/4 de dia por ano, ou 0.25. Assim, vou dividir o número de dias por 365.25. Só que o resultado será uma extrovenga cheia de casas decimais. Quando alguém pergunta a sua idade você responde 25 anos e não 25.476823 anos. Então, para um toque de refinamento, vamos retirar as casas decimais com a função INT(). Tudo que ela faz é tranformar 25.476823 em 25.

A imagem abaixo ilustra bem o exemplo.

caculo de idade no excel

calculo de idade no excel

Tudo o que fiz foi subtrair as duas datas (A3-A2), transformar a diferença em anos (dividindo por 365,25) e mostrando apenas a parte inteira, aplicando a funçao INT(). Simples, não?

comentários

10 comentários para “Como calcular diferença de datas (idade) no Excel”

  1. Neacyr em 13/04/2009

    Quero calcular a idade até determinada data de muitos alunos.
    Na coluna A coloco a data de nascimento na coluna B a data até quando preciso calcular a idade.Na coluna A as datas serão diversas na coluna B
    sempre a mesma data.
    Não tem como digitar a coluna B apenas uma vez e puxar o resultado?

    Neacyr,
    claro que sim. Coloque a segunda data em uma célula e indique na fórmula sempre a mesma célula.
    []s
  2. Gislene em 08/05/2009

    Bom Dia
    Estou com um problema na minha planilha e não consigo resolver, não sei se esse é o local apropriado me desculpem se não for mas estou desesperada porque a planilha é imensa e gostaria que alguém me ajudasse, onde eu digitei data aparecem números, exemplo: na célula onde digitei a data 02/02/2009 aparece o número 39846 e eu não consigo reverter para o formato data já tentei ir em: formatar / célula / data até persolnalizado dd/mm/aaaa mas nada adianta os números insistem em aparecer será que existe algum comando para reverter ???

  3. Roberta em 12/08/2009

    Boa Noite,

    Preciso subtrair a data de nascimento pela data de hoje e ter um resultado de anos e meses. É a data de nascimento de um paciente subtraido da data de hoje para eu saber quanto tempo o paciente está em acompanhamento em nosso serviço de saúde. O resultado precisa ser por exemplo: acompanhamento há 5 anos e 2 meses. Tem como fazer no Excel?

  4. Marcos V. em 16/08/2009

    Roberta,

    essa pergunta merece um post só pra ela, mas pra você não ficar na mão, ai vai a resposta. Se você tiver a primeira data na célula A1 e a segunda na célula A2, a fórmula para a diferença em anos, meses e dias será: =DATEDIF(A1,A2,”y”) & ” anos, ” & DATEDIF(A1,A2,”ym”) & ” meses, ” & DATEDIF(A1,A2,”md”) & ” dias”
    Se quiser, pode substituir A2 por NOW() e substituir da data de hoje.
    []s
    Marcos V.

  5. Jailton em 19/08/2009

    Olá, esta dica me ajudou muinto, há algum tempo que procurava esta formula. obg.

  6. cris rosa em 13/10/2009

    deu muito certo, porém, não consigo copiar nas outras células, já que a data referencia para subtrair será sempre para mim, o último dia do mês menos a data de nascimento das pessoas, como faço para arrastar a fórmula a outras datas?

  7. elmanoa em 24/10/2009

    levei uns 2 meses para descobrir esta fórmula para inserir no Access, ou seja, a seguinte fórmula:

    =Int((data atual()-data aniversário)/365,25)

  8. Rachel Rodrigues em 11/03/2010

    Melhor resposta, muito obrigada pela demonstração.

  9. Nevinho em 22/06/2010

    Ótima dica…
    Sempre quis fazer… mas sempre 1 semana antes alterava a idade.. e não era o correto.. Muito Obrigado

  10. CLAUDIA em 19/07/2010

    Olá, preciso urgente de uma ajuda, tenho que montar uma planilha onde consigo calcular os valores a serem cobrados dos funcionário referente ao plano de saude, porém, preciso transformar cada faixa etária com seu respectivo valor através da idade de cada uns, efazer com que possa deixar esta alteração automatica para as mudanças de faixa etária. Como faço isso? segue um exemplo:

    ex 1
    funcionário 1/01/1979 – 31 anos – faixa de 27 a 31 anos – valor 70,00

    ex 2
    alterou idade p/ 32 anos – faixa de 32 a 36 e valor 90,00?

    como deixar esta alteração de valores automatica de 31 p/ 32 anos???

    Muito obrigado

    Claudia,
    a resposta para essa pergunta gerou um novo artigo:
    http://compdicas.kabunzo.com/2010/07/21/vlookup-como-procurar-dados-em-uma-tabela-do-excel/
    Grato pela sugestão.

Deixe seu comentário