22/08/2014

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

30 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. fernanda em 30/01/2010

    data de nasciemento…

  9. Rachel Rodrigues em 11/03/2010

    Melhor resposta, muito obrigada pela demonstração.

  10. 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

  11. HAISLAN em 10/07/2010

    BOM DIA ….
    GOSTARIA DE SABE SE VOCÊ PODE MIM AJUDA CALCULA A SEGUINTE SITUAÇÃO:

    SAIDA RETORNO PRASO DATA ATUAL
    08/07/2010 28/07/2010 ????? 10/07/2010

    O PRASO EM DIAS – DATA ATUAL
    DESDE JA AGRADEÇO

    FICO NO AGUARDO

  12. 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.
  13. Karine Antunes em 25/10/2010

    Gostaria de saber como calcular idade sempre contando da data atual, ou seja, algo que atualize sozinha sem que eu precisa mudar sempre que necessario.

  14. Marcel Garcia em 21/12/2010

    Não consigo converter as datas para valores de forma alguma;
    As datas me são dadas através de uma fórmula que busca a menor data e a maior.
    Preciso para poder calcular a quantidade de dias de um projeto.

    Sempre que tente converter alguma data para número serial com o =DateValue, recebo um erro.

    Abs

  15. Giza em 11/02/2011

    Alguém pode me ajudar? Não consigo calcular aos, meses e dias…obrigada

  16. Giza em 11/02/2011

    Alguém pode me ajudar? Não consigo calcular anos, meses e dias…obrigada

  17. verinha em 21/02/2011

    gostaria de saber como caucular a diferença de dias entre duas crianças
    uma nasceu dia 10/11/1998 e a outra dia 12/04/2004

  18. Jhefferson A Costa em 28/04/2011

    Muito obrigado, você me ajudou muito, não imagina o quanto uma “bobeira” dessa me salvou aqui no meu serviço…
    Abraços!

  19. Paulo Jorge em 30/05/2011

    Boa tarde,

    Preciso de abrir novas planilhas, consoante novas células numa coluna, noutra planilha!

    Por ex: na informação da coluna estão nºs de carta de condução, e nas novas planilhas pretendo que estejam mais informações, para além desse mesmo nº – como nome, morada, (género de uma ficha de inscrição).

    Como posso fazer isso?

    Pode ajudar-me?

    Obrigado

    Paulo

  20. Moisés Palomo em 02/08/2011

    Para arrastar a formula que referencia sempre uma célula adigite $ antes da letra e do número, assim a formula calculará sempre essa célula.
    Exemplo:
    Alunos

  21. Moisés Palomo em 02/08/2011

    Para retornar a formula sempre à mesma célula utilize $ antes da letra e do número.
    Exemplo
    A1 = data nascimento
    A2 = data nascimento’
    A3 = data nascimento”
    B1 = data atual
    Na célula C1 digite a Formula: = +($B$1-A1)
    basta arrastar essa formula na coluna C
    Configure as células da coluna C para data > personalizado > dd ou mm ou aa
    vlw.

  22. Wagner Caun B.B. em 12/08/2011

    Para Vc cálcular a idade de alguém em Anos, Meses e dias…:

    Primeiro terá que ter isso em números inteiros.
    Para isso, coloque na célula A1 a data de nascimento; na A2, insira a seguinte fórmula =Hoje(). Selecione A1 e A2, click com o botão direito do mouse, formatar célula; acesse a aba “Número” click em “data” e escolha um formato, (preferencialmente 12-ago-11).
    Agora na célula B1, coloque dessa forma =(A2-A1), vai dar um número inteiro, sem problemas.
    Feito assim, na célula C1 use a formula a seguir; =TRUNCAR(B1/365,25)&” Ano(s), “&TRUNCAR(MOD(B1;365,25)/30)&” Mes(es) e “&MOD(MOD(B1;365,25)/30;1)*30&” .
    Pronto, espero ter colaborado com alguém.
    E que Deus estejam com vocês.

  23. Gabriel Oliveira em 19/08/2011

    Muito obrigado! Já tinha pesquisado, há meses, como se faria este cálculo, e nunca nenhuma explicação foi tão elucidativa… ou eficaz! Mais uma vez, um muito obrigado e um abraço!

  24. Rachel em 07/11/2011

    Muito obrigada pela ajuda.
    Salvou meu dia.

  25. Ivandre Lopes em 12/12/2011

    ola,

    alguém poderia me dizer como posso calcular a diferença entre essas datas?

    Preciso subtrair um intervalo de duas datas com uma outra de duas datas para ter o resultado em anos meses e dias?

  26. EDSON ALENCAR em 02/02/2012

    O colega tem certeza quer aformuladeu certo? eu tento e não consigo. Será o que é que está havendo?

  27. Eliza em 09/04/2012

    Poderia apenas colocar:
    Ano(Hoje()) – Ano(Data_Nascimento)

  28. Fabio em 14/06/2012

    Gostei da explicação sobre como calcular diferença entre datas. Mas gostaria de saber se, sabendo uma data em que alguem començou trabalhar, pode-se calcular a data de reforma se este indivíduo tem de reformar quando completar 35 anos de servico?

  29. Marcos V. em 07/08/2012

    Karine,

    na fórmula, substitua a data inicial pela funcão agora(), ou now() se estiver em inglês.

    abraços.

  30. Edison em 08/05/2013

    formula como faço para transformar no excel uma data em meses atuais

Deixe seu comentário