O Excel tem uma função que a maioria dos usuários nunca encontra na lista de funções, não aparece nas sugestões automáticas quando você começa a digitar, e não tem documentação oficial na interface do programa — mas existe, funciona perfeitamente e é especialmente útil para calcular diferenças entre datas. Essa função se chama DATADIF, e ela permite calcular a diferença entre duas datas em anos completos, meses completos, dias, e até combinações como “meses além dos anos completos” ou “dias além dos meses completos”. Neste artigo iremos mostrar como usar a função DATADIF no Excel para calcular a idade e outras diferenças de data.
Vídeo aula sobre como calcular idade no Excel
Assista ao vídeo abaixo, caso prefira aprender como calcular idade no Excel assistindo a um vídeo.
Não se esqueça de se INSCREVER no nosso canal.
E coloque o seu melhor e-mail abaixo para receber todas as nossas novidades em primeira mão.
O que é a função DATADIF e por que ela é “escondida”
A função DATADIF (nome derivado de “Date Difference” — diferença de datas) existe no Excel desde as versões mais antigas, herdada do Lotus 1-2-3 por compatibilidade. A Microsoft nunca a documentou oficialmente nas versões modernas do Excel — ela não aparece na lista de funções, não há assistente de fórmula para ela, e quando você digita “=DATADIF” na célula, o Excel não mostra os parâmetros esperados como faz para outras funções. Apesar disso, a função continua funcional em todas as versões do Excel e é completamente confiável.
Por ser “escondida”, muitos usuários de Excel avançados não a conhecem, e usuários que a conhecem às vezes se surpreendem ao descobrir que ela existe. Quando você abre o parêntese depois de DATADIF, o Excel não exibe a dica de ferramenta com a sintaxe — você precisa saber de memória (ou de uma referência como este artigo) quais são os três parâmetros e o que cada um espera. A ausência da dica de ferramenta é exatamente o que a torna “escondida” para a maioria dos usuários.
Apesar de não ser documentada na interface, a DATADIF é amplamente usada por usuários avançados de Excel exatamente por sua capacidade única de retornar diferenças de data em diferentes unidades de forma precisa e direta. Ela não requer combinações de funções como FRAÇÃOANO + INT ou subtração + divisão — ela faz tudo em uma única chamada de função.
A sintaxe e os parâmetros da DATADIF
A sintaxe da DATADIF é: =DATADIF(data_inicial; data_final; unidade). O primeiro parâmetro é a data inicial — no caso de cálculo de idade, a data de nascimento. O segundo parâmetro é a data final — no caso de cálculo de idade, a data de hoje usando HOJE(). O terceiro parâmetro é a unidade, que define qual informação a função deve retornar, e é sempre passado como texto entre aspas.
As unidades disponíveis são: “Y” (anos completos entre as datas), “M” (meses completos), “D” (dias totais), “MD” (dias além dos meses completos, ignorando meses e anos), “YM” (meses além dos anos completos, ignorando anos) e “YD” (dias além dos anos completos, ignorando anos). Para calcular a idade em anos completos: =DATADIF(B2;HOJE();”Y”). O “Y” é obrigatório em inglês — a versão em português “A” de anos não é aceita pela função.
Essa variedade de unidades é o que torna a DATADIF única entre as funções de data do Excel. Com ela, você pode calcular a idade de forma decomposta: “X anos, Y meses e Z dias”. Combine três chamadas de DATADIF: =DATADIF(B2;HOJE();”Y”)&” anos, “&DATADIF(B2;HOJE();”YM”)&” meses e “&DATADIF(B2;HOJE();”MD”)&” dias”. O resultado seria algo como “30 anos, 4 meses e 15 dias” — uma representação completa da idade que nenhuma das outras funções consegue produzir de forma tão direta.
Calculando a idade com DATADIF passo a passo
Para calcular apenas a idade em anos completos, use: =DATADIF(B2;HOJE();”Y”). Onde B2 é a célula com a data de nascimento. O resultado é um número inteiro representando os anos completos de vida. A DATADIF já retorna o número inteiro diretamente — não é necessário envolver com INT como nos outros métodos, porque a unidade “Y” pede especificamente anos completos.
Um detalhe importante: a data inicial (primeiro parâmetro) deve sempre ser anterior à data final (segundo parâmetro). Se você inverter os parâmetros — colocar HOJE() como data inicial e a data de nascimento como final —, a função retorna erro #NUM!. Ao contrário da subtração simples onde a ordem define apenas se o resultado é positivo ou negativo, a DATADIF exige que a data inicial seja a mais antiga. Para garantir que nunca haja inversão acidental, você pode usar: =DATADIF(MÍNIMO(B2;HOJE());MÁXIMO(B2;HOJE());”Y”).
Para uma lista de pessoas com datas de nascimento, crie a fórmula na primeira linha e arraste para baixo pela alça de preenchimento. A referência B2 é relativa e se ajustará automaticamente para B3, B4, B5 etc. A referência HOJE() é sempre dinâmica — ela sempre retorna a data do dia atual, então toda vez que a planilha é aberta ou recalculada, as idades são atualizadas sem nenhuma ação manual.
DATADIF para calcular mais do que apenas a idade
Embora muito usada para calcular a idade, a DATADIF é igualmente útil para outras diferenças de data. Em controle de projetos, =DATADIF(inicio_projeto;HOJE();”D”) calcula quantos dias o projeto está em andamento. Em gestão de contratos, =DATADIF(data_inicio_contrato;data_fim_contrato;”M”) calcula a duração do contrato em meses. Em RH, =DATADIF(data_admissão;HOJE();”Y”) calcula o tempo de empresa em anos completos.
Para análises mais sofisticadas, combine DATADIF com SE para criar classificações automáticas. =SE(DATADIF(B2;HOJE();”Y”)>=60;”Idoso”;SE(DATADIF(B2;HOJE();”Y”)>=18;”Adulto”;”Menor”)) classifica cada pessoa por faixa etária automaticamente. Conforme os aniversários chegam, as classificações se atualizam sem nenhuma intervenção. Esse tipo de automação é o que torna o Excel tão poderoso para análises de dados que envolvem tempo.
Se você curtiu esse artigo onde mostramos como usar a função escondida DATADIF no Excel para calcular a diferença entre datas em anos, meses e dias, compartilhe com as suas redes sociais e não se esqueça de deixar um comentário aqui embaixo caso você tenha ficado com alguma dúvida.
Limitações conhecidas da DATADIF e como contorná-las
Apesar de ser muito útil, a DATADIF tem uma limitação conhecida com a unidade “MD” (dias além dos meses completos) em certos casos específicos — como quando a data de início cai no fim de um mês longo e a data de fim está em um mês curto. Nesses casos, a função pode retornar resultados negativos inesperados. A unidade “MD” é a menos confiável, e muitos especialistas recomendam evitá-la ou usar uma combinação de outras unidades para substituir seu cálculo.
Para as unidades “Y”, “M”, “D”, “YM” e “YD” usadas nas situações mais comuns (como calcular a idade em anos ou decomposta em anos e meses), a DATADIF funciona corretamente sem problemas documentados. Para o cálculo de idade em anos completos — que é o uso mais frequente —, a unidade “Y” é completamente confiável em todas as versões do Excel. As limitações existentes afetam apenas casos de borda com a unidade “MD” e não comprometem o uso geral da função para as aplicações descritas neste artigo.