DATADIF no Excel: diferença entre datas em anos, meses e dias
Atualizado em 10. November 2026 · Equipe Exercícios Excel
=DATADIF(B2;C2;"Y") dá os anos completos entre a admissão e hoje.Sintaxe
=DATADIF(data_inicial; data_final; unidade)- data_inicial
- A data mais antiga.
- data_final
- A data mais nova. Pode ser HOJE().
- unidade
- "Y" anos, "M" meses, "D" dias, "YM" meses que sobram depois dos anos, "MD" dias que sobram depois dos meses.
Pratique agora
Em D2, calcule os anos completos entre a admissão (B2) e hoje (C2).
Tempo de empresa em anos e meses
Calcule os anos com "Y" e os meses que sobram com "YM". Depois junte com &.
=DATADIF(B2;C2;"Y")&" anos e "&DATADIF(B2;C2;"YM")&" meses"A função escondida
O DATADIF não aparece na lista de funções do Excel, mas funciona. Escreva o nome inteiro e os argumentos à mão.
Passo a passo
Escreva =DATADIF( e clique na data mais antiga. Depois do ponto e vírgula, clique na data mais nova ou escreva HOJE(). Por fim, escreva a unidade entre aspas: "Y" para anos, "M" para meses ou "D" para dias. Feche o parêntese.
=DATADIF(B2;HOJE();"M")O Excel não mostra dicas para essa função enquanto você digita, porque ela é escondida. Escreva o nome inteiro e os argumentos com cuidado.
As unidades
- "Y": anos completos
- "M": meses completos
- "D": dias
- "YM": meses que sobram depois dos anos completos
- "MD": dias que sobram depois dos meses completos
- "YD": dias desde o último aniversário
Exemplo do dia a dia: férias
Na CLT, o funcionário ganha direito a férias a cada 12 meses de trabalho. Para saber quantos meses já foram trabalhados desde a admissão:
=DATADIF(B2;HOJE();"M")Para saber quantos meses faltam para completar o próximo período, use =12-MOD(DATADIF(B2;HOJE();"M");12).
Tempo completo em texto
Junte as três partes para mostrar o tempo exato, como num atestado de tempo de serviço.
=DATADIF(B2;C2;"Y")&" anos, "&DATADIF(B2;C2;"YM")&" meses e "&DATADIF(B2;C2;"MD")&" dias"DATADIF ou subtrair datas?
Para dias, a subtração simples (=C2-B2) é mais fácil e dá o mesmo resultado que "D". Para meses e anos, a subtração não serve, porque os meses têm tamanhos diferentes. Aí entra o DATADIF.
No Excel em inglês e no Google Planilhas
No Excel em inglês, a função se chama DATEDIF. No Google Planilhas, o nome é DATADIF também, com as mesmas unidades.
Exemplo do dia a dia: tempo de casa para promoção
Uma empresa só promove quem tem pelo menos 2 anos de casa. Com a admissão em B2, junte o DATADIF com SE:
=SE(DATADIF(B2;HOJE();"Y")>=2;"Pode ser promovido";"Ainda não")Arraste para a lista inteira de funcionários e filtre por "Pode ser promovido" para ter a lista de candidatos.
Erros comuns
- #NÚM!: a data inicial é maior que a final; troque a ordem
- #VALOR!: uma das datas é texto, como uma data colada de um site; converta com DATA ou VALOR
- #NÚM! com unidade escrita errado, como "A" para anos: as unidades são em inglês, "Y", "M" e "D"
- Resultado um a menos do que o esperado: o DATADIF conta só períodos completos; quem faz aniversário amanhã ainda não completou o ano
Idade em dias, meses e anos
- Anos:
=DATADIF(B2;HOJE();"Y") - Meses totais:
=DATADIF(B2;HOJE();"M") - Dias totais:
=DATADIF(B2;HOJE();"D")
Bebês costumam ter a idade contada em meses até os 2 anos. Use "M" nesses casos.
Exemplo do dia a dia: garantia
Uma loja dá 12 meses de garantia. Com a data da compra em B2, o DATADIF em meses diz se o produto ainda está na garantia quando o cliente volta com um defeito.
=SE(DATADIF(B2;HOJE();"M")<12;"Na garantia";"Fora da garantia")Erros comuns
#NÚM!
A data inicial é maior que a final. Troque a ordem.
#VALOR!
Uma das datas é texto. Confira se ela está alinhada à direita, como os números.
Perguntas frequentes
DATADIF dá erro com datas iguais?
Não. Com as duas datas iguais, o resultado é 0 em qualquer unidade.
Por que o DATADIF não aparece na lista de funções?
Ele foi criado para compatibilidade com programas antigos e ficou fora da lista e da ajuda do Excel. Mesmo assim, funciona em todas as versões atuais.
Como saber a idade em anos com uma casa decimal?
Use =FRAÇÃOANO(B2;HOJE()), que dá algo como 35,2. Arredonde com ARRED se precisar.
O DATADIF conta o ano bissexto?
Sim. Ele usa o calendário de verdade, com fevereiro de 28 ou 29 dias.
DATADIF funciona com horas?
Não. Ele ignora as horas e conta só dias, meses e anos.
DATADIF aceita a unidade em minúsculas?
Sim. "y" e "Y" funcionam igual.
Como calcular meses entre duas datas com casas decimais?
Use =FRAÇÃOANO(B2;C2)*12 para uma estimativa com decimais. O DATADIF só conta meses completos.
Como calcular a idade no Excel?
=DATADIF(B2;HOJE();"Y"), com a data de nascimento em B2.
DATADIF existe no Google Planilhas?
Sim, com o mesmo nome e as mesmas unidades.
Veja também
Treine DATADIF até ficar fácil
A lição "Funktion DATEDIF" tem 5 exercícios com correção na hora.