Como calcular idade no Excel: anos, meses e dias (DATADIF)

Foto de William Oliveira
William OliveiraEngenheiro mecânico e especialista em Excel e VBA
Atualizado em 26/10/20267 min de leitura

Calcular idade parece simples: é só subtrair o ano de nascimento do ano atual, certo? Não exatamente. Quem nasceu em dezembro ainda não fez aniversário em outubro, e a conta “2026 − 1985” daria um ano a mais. Em cadastro de clientes, RH, escolas e clínicas, esse erro aparece mais do que parece.

Neste artigo você vai aprender a calcular idade no Excel do jeito certo: idade em anos, idade completa em anos, meses e dias, idade numa data específica, próximo aniversário, faixa etária e contagem de pessoas por idade. Todas as fórmulas foram testadas com os exemplos da tabela abaixo.

Neste artigo (10 seções)
  1. Resposta rápida: a fórmula da idade
  2. Tabela de exemplo
  3. Como calcular a idade em anos (passo a passo)
  4. Idade completa em anos, meses e dias
  5. Idade em uma data específica
  6. Próximo aniversário e dias que faltam
  7. Faixa etária a partir da idade
  8. Contar pessoas por idade e calcular a média
  9. Erros comuns ao calcular idade no Excel
  10. Perguntas frequentes

Resposta rápida: a fórmula da idade

Com a data de nascimento na célula B2, use:

=DATADIF(B2;HOJE();"y")

O resultado é a idade em anos completos. A função HOJE() pega a data do computador, então a idade se atualiza sozinha todo dia que a planilha for aberta.

Tabela de exemplo

Para acompanhar, monte esta planilha. Os resultados do artigo consideram que hoje é 27/10/2026. Se você fizer em outro dia, os números vão mudar, e isso é o esperado.

ABCD
1NomeNascimentoIdadeIdade completa
2Ana15/03/19903636 anos, 7 meses e 12 dias
3Bruno27/10/20002626 anos, 0 meses e 0 dias
4Carla29/02/20042222 anos, 7 meses e 28 dias
5Diego31/12/19854040 anos, 9 meses e 27 dias
6Elisa28/10/20081717 anos, 11 meses e 29 dias
7Fábio01/01/19586868 anos, 9 meses e 26 dias
8Gabriela31/07/20151111 anos, 2 meses e 27 dias
9Heitor10/05/202333 anos, 5 meses e 17 dias

Repare em alguns casos escolhidos de propósito: Bruno faz aniversário hoje, Elisa faz amanhã (por isso ainda tem 17), Carla nasceu em 29 de fevereiro e Diego nasceu no último dia do ano.

Como calcular a idade em anos (passo a passo)

  1. Digite as datas de nascimento na coluna B. Confira se o Excel entendeu como data: ela deve ficar alinhada à direita da célula.
  2. Clique em C2 e digite =DATADIF(B2;HOJE();"y").
  3. Pressione Enter. Para Ana, o resultado é 36.
  4. Arraste a alça de preenchimento (o quadradinho no canto da célula) até C9 para copiar a fórmula para os outros nomes.

Entenda os três argumentos:

  • B2: data inicial (o nascimento).
  • HOJE(): data final. Pode ser qualquer data ou célula com data.
  • "y": a unidade do resultado. "y" vem de year e devolve anos completos.

A DATADIF é uma função “escondida”: ela funciona em todas as versões do Excel, mas não aparece na lista do autocompletar nem no assistente de funções. Digite o nome inteiro, sem acento, e ela vai funcionar normalmente.

As unidades da DATADIF

UnidadeO que devolveExemplo (Ana)
"y"Anos completos36
"m"Meses completos no total439
"d"Dias no total13.375
"ym"Meses que sobram depois dos anos completos7
"yd"Dias que sobram depois dos anos completos, ignorando o ano226
"md"Dias que sobram depois dos meses completos12 (veja o aviso abaixo)

Idade completa em anos, meses e dias

Para mostrar algo como “36 anos, 7 meses e 12 dias”, junte três cálculos com o &. Em D2:

=DATADIF(B2;HOJE();"y")&" anos, "&DATADIF(B2;HOJE();"ym")&" meses e "&(HOJE()-DATAM(B2;DATADIF(B2;HOJE();"m")))&" dias"

Como funciona cada parte:

  • DATADIF(B2;HOJE();"y") calcula os anos completos.
  • DATADIF(B2;HOJE();"ym") calcula os meses que passaram desde o último aniversário.
  • HOJE()-DATAM(B2;DATADIF(B2;HOJE();"m")) calcula os dias: a DATAM soma ao nascimento todos os meses completos já vividos, e a subtração mostra quantos dias faltam até hoje.

Por que não usar "md" para os dias? A própria Microsoft avisa, na página da função DATADIF, que a unidade "md" pode dar resultados errados, inclusive números negativos, principalmente quando o nascimento cai no fim do mês (dias 29, 30 e 31). O cálculo com DATAM evita esse problema. No exemplo do Diego (31/12/1985), ele dá corretamente 27 dias.

Se preferir os três números em colunas separadas (para ordenar ou filtrar), use cada parte numa célula própria. Só lembre de formatar a célula dos dias como Geral (veja o item “O resultado aparece como data” nos erros comuns).

Idade em uma data específica

Às vezes a pergunta não é “quantos anos a pessoa tem hoje”, e sim “quantos anos ela terá numa data de corte”: matrícula escolar, inscrição em concurso, campeonato por categoria, idade na data de admissão. Basta trocar o HOJE() pela data desejada.

Idade em 31/12/2026:

=DATADIF(B2;DATA(2026;12;31);"y")

Com esse cálculo, Diego passa a ter 41 e Elisa 18, porque os dois fazem aniversário antes do fim do ano. Uma dica melhor ainda é colocar a data de corte numa célula, por exemplo F1, e usar referência absoluta:

=DATADIF(B2;$F$1;"y")

Assim você muda a data uma vez e todas as idades se recalculam.

Próximo aniversário e dias que faltam

Para saber a data do próximo aniversário:

=DATAM(B2;12*(DATADIF(B2;HOJE();"y")+1))

A fórmula soma ao nascimento a quantidade de meses da próxima idade (idade atual + 1, vezes 12). Formate a célula como data (Ctrl + 1 > Data). Para Carla, que nasceu em 29/02, a DATAM devolve 28/02/2027, já que 2027 não é bissexto.

Para saber quantos dias faltam, mostrando “Hoje” no dia do aniversário:

=SE(E(MÊS(B2)=MÊS(HOJE());DIA(B2)=DIA(HOJE()));"Hoje";DATAM(B2;12*(DATADIF(B2;HOJE();"y")+1))-HOJE())

NomePróximo aniversárioFaltam
Ana15/03/2027139
Bruno27/10/2027Hoje
Carla28/02/2027124
Elisa28/10/20261

Quer destacar na tabela quem faz aniversário nos próximos dias? Use essa coluna numa regra de formatação condicional com fórmula.

Faixa etária a partir da idade

Com a idade na coluna C, você pode classificar cada pessoa:

=SE(C2<18;"Menor de idade";SE(C2<60;"Adulto";"60+"))

O Excel testa as condições na ordem: se for menor que 18, para ali; se não, testa se é menor que 60. No exemplo, Elisa, Gabriela e Heitor ficam como “Menor de idade”, Fábio como “60+” e os outros como “Adulto”.

Contar pessoas por idade e calcular a média

O que você querFórmulaResultado
Quantos têm menos de 18=CONT.SE(C2:C9;"<18")3
Quantos têm de 18 a 59=CONT.SES(C2:C9;">=18";C2:C9;"<60")4
Idade média=MÉDIA(C2:C9)27,875

Para mostrar a média com uma casa decimal, use o botão Diminuir casas decimais ou um formato personalizado como 0,0" anos".

Erros comuns ao calcular idade no Excel

Usar (HOJE()-B2)/365

É a fórmula mais encontrada por aí, mas os anos bissextos fazem ela errar perto do aniversário. Mesmo a versão “melhorada” =INT((HOJE()-B2)/365,25) falha: no nosso teste, ela diz que Bruno tem 25 anos justamente no dia em que ele completa 26. Use a DATADIF.

Subtrair só os anos

=ANO(HOJE())-ANO(B2) ignora mês e dia. Para Diego daria 41, mas ele só faz 41 em 31 de dezembro.

Erro #NÚM!

Acontece quando a data inicial é maior que a final, por exemplo uma data de nascimento digitada no futuro (2062 em vez de 1962) ou os argumentos invertidos. A ordem é sempre nascimento primeiro, data final depois.

Erro #VALOR!

A data foi digitada como texto (por exemplo “15.03.1990” ou com espaço no fim) ou veio assim de outro sistema. Dica para identificar: datas de verdade ficam alinhadas à direita; texto fica à esquerda. Corrija a data ou use Dados > Texto para Colunas para converter. Se a coluna puder ter células vazias, envolva a fórmula com a função SEERRO: =SEERRO(DATADIF(B2;HOJE();"y");"").

O resultado aparece como data

Se a idade aparecer como 05/02/1900 ou parecido, a célula está com formato de data. Selecione a célula, pressione Ctrl + 1 e escolha Geral ou Número. Isso é comum na fórmula dos dias, que subtrai uma data de outra.

Célula vazia mostrando 126

Se a data de nascimento estiver em branco, o Excel trata como 00/01/1900 e a fórmula devolve uma idade absurda (126 em 2026). Use =SE(B2="";"";DATADIF(B2;HOJE();"y")) para deixar a célula vazia enquanto não houver data.

Perguntas frequentes

A DATADIF funciona no Excel 365 e no Google Planilhas?

Sim. Ela funciona no Excel 2010, 2013, 2016, 2019, 2021 e Microsoft 365, e também no Google Planilhas e no LibreOffice Calc. Ela só não aparece no autocompletar do Excel.

Por que a idade não muda quando abro a planilha?

Verifique se o cálculo está automático em Fórmulas > Opções de Cálculo > Automático. Se você colou a idade como valor (sem fórmula), ela não vai mais se atualizar.

Como calcular o tempo de empresa?

É a mesma lógica: troque a data de nascimento pela data de admissão. =DATADIF(B2;HOJE();"y") dá os anos de casa, e a fórmula de anos, meses e dias mostra o tempo completo.

E quem nasceu em 29 de fevereiro?

A DATADIF considera que a pessoa completa mais um ano em 1º de março nos anos que não são bissextos. Já a fórmula de próximo aniversário com DATAM marca a data em 28 de fevereiro. Se a sua regra for diferente, ajuste conforme a política da empresa ou do órgão.

Referência: Função DATADIF – Suporte da Microsoft.

QUER IR ALÉM DESTE ARTIGO?
Aprenda Excel do básico ao avançado com aulas em vídeo
O Curso de Excel da Expert Cursos vai das primeiras configurações até funções, gráficos e macros. São cerca de 30 horas de aula com certificado, planilhas prontas para baixar e acesso vitalício, com pagamento único.
Link de afiliado: se você comprar por ele, o Excel Smart pode receber uma comissão, sem custo extra para você.
Foto de William Oliveira

QUEM ESCREVEU

William Oliveira

Engenheiro mecânico, especialista em Excel e programador VBA avançado. Ensina VBA no YouTube para mais de 4,8 mil inscritos e testa cada fórmula antes de publicar.