DATEDIF no Excel: Calcule Anos, Meses e Dias Facilmente
Aprenda a usar a função DATEDIF no Excel para calcular idade, tempo de serviço, anos, meses e dias entre datas sem complicações.
Por Ayoub Farid · · 2 min de leitura
A função DATEDIF calcula o número de anos, meses ou dias completos entre duas datas. Ela é o método padrão para calcular idades e tempo de serviço em uma planilha. Curiosamente, ela não aparece no preenchimento automático de funções do Excel, mas funciona perfeitamente em todas as versões e também no Planilhas Google (Google Sheets).
Sintaxe
=DATEDIF(start_date, end_date, unit)
| Unidade | Retorno |
|---|---|
| "y" | Anos completos |
| "m" | Meses completos |
| "d" | Dias |
| "ym" | Meses restantes após os anos inteiros |
| "md" | Dias restantes após os meses inteiros |
| "yd" | Dias restantes após os anos inteiros |
Idade
=DATEDIF(B2,TODAY(),"y")
No Excel em português, use a função HOJE (TODAY): =DATEDIF(B2,HOJE(),"y").
Anos e meses de tempo de serviço
=DATEDIF(B2,TODAY(),"y")&" years, "&DATEDIF(B2,TODAY(),"ym")&" months"
→ "4 anos, 7 meses" (ajustando o texto entre aspas para o português).
A data inicial deve vir antes da data final
Se a data inicial for posterior à data final, a função DATEDIF retornará o erro #NÚM! (#NUM!). Você pode contornar isso envolvendo a fórmula em uma função IFERROR (SEERRO no Excel em português) ou ajustando a ordem das suas colunas.
O problema conhecido da unidade "md"
A própria Microsoft documenta que a unidade "md" pode apresentar resultados imprecisos em situações específicas. Se a contagem exata dos dias restantes for crítica (como em cálculos jurídicos ou no fechamento da folha de pagamento), faça o cálculo de outra forma, por exemplo: =end-EDATE(start,DATEDIF(start,end,"m")) — lembrando que no Excel em português a função EDATE se chama DATAM.
Precisa apenas da quantidade de dias? Basta subtrair
Para obter o total de dias corridos entre duas células, você não precisa da função DATEDIF:
=C2-B2
Se precisar calcular apenas dias úteis, use a função NETWORKDAYS (DIATRABALHOTOTAL).
Perguntas frequentes
Por que não encontro a função DATEDIF no Excel?
Trata-se de uma função legada mantida por questões de compatibilidade com planilhas antigas. Por isso, o Excel não exibe essa fórmula na lista de preenchimento automático. Basta digitar o nome completo com os argumentos que ela funciona normalmente.
Como calcular idade no Excel?
Utilize =DATEDIF(birthdate,TODAY(),"y") (ou com a função HOJE em português). Confira nosso guia passo a passo para calcular idade.
Por que a função DATEDIF retorna o erro #NUM! (#NÚM!)?
Esse erro ocorre quando a data de início é posterior à data de término no intervalo indicado.
A função DATEDIF funciona no Planilhas Google (Google Sheets)?
Sim, exatamente da mesma forma e com os mesmos códigos de unidade.