Quantos anos tem o cliente? Há quantos meses o funcionário está na empresa? Quantos dias faltam para o vencimento? Perguntas assim aparecem o tempo todo em planilhas, e a função DATADIF é a resposta mais direta. Ela é simples, mas tem peculiaridades que valem conhecer.
Como funciona
A sintaxe é:
=DATADIF(data_inicial; data_final; unidade)
- Data inicial: a data mais antiga.
- Data final: a mais recente. Se for menor que a inicial, ocorre erro.
- Unidade: um código entre aspas que indica como medir a diferença.
As unidades principais são:
- "Y": anos completos.
- "M": meses completos.
- "D": dias.
- "YM": meses restantes depois de descontar os anos completos.
- "YD": dias restantes depois de descontar os anos.
- "MD": dias restantes depois de descontar anos e meses. Esta tem problemas conhecidos.
As letras vêm do inglês (year, month, day) e permanecem assim mesmo no programa em português. Se a sua versão não aceitar, consulte a ajuda, porque pode variar conforme o idioma e a versão.
Calculando a idade
O uso mais famoso. Com a data de nascimento em B2:
=DATADIF(B2; HOJE(); "Y")
HOJE() devolve a data atual, então a idade se atualiza sozinha todos os dias. O resultado é a idade em anos completos, exatamente como se fala. A função só soma um ano no dia do aniversário.
Para a idade completa em anos, meses e dias, combine as unidades com texto:
=DATADIF(B2; HOJE(); "Y") & " anos, " & DATADIF(B2; HOJE(); "YM") & " meses"
O símbolo & junta pedaços de texto e resultados de fórmulas. Esse tipo de combinação aparece na função TEXTO, útil para formatar frases com datas e números.
Tempo de serviço, contrato ou assinatura
Para saber há quanto tempo algo começou, o raciocínio é o mesmo:
- Meses de contrato: =DATADIF(data_início; HOJE(); "M")
- Dias de uso: =DATADIF(data_início; HOJE(); "D")
Para prazos de contrato com data final futura, o cálculo é invertido: a data inicial é hoje e a final é o vencimento. =DATADIF(HOJE(); vencimento; "D") mostra quantos dias faltam. Se o vencimento já passou, a função dá erro, então envolva em um teste com SE ou use SEERRO:
=SEERRO(DATADIF(HOJE(); B2; "D"); "Vencido")
Subtração simples de datas
Para dias corridos, não é preciso DATADIF. Datas são números, então a subtração direta funciona:
=B2-A2
O resultado é o número de dias entre as datas. Se o resultado aparecer como uma data estranha, formate a célula como número. Essa é a alternativa mais segura quando você só precisa de dias, e funciona também quando a data final é anterior (o resultado fica negativo, o que pode ser útil para marcar atrasos).
Para atrasos, combine com formatação condicional para prazos: se a diferença for negativa, pinte de vermelho.
Dias úteis
Para cobranças, entregas e prazos de serviço, muitas vezes importam só os dias úteis. As funções são DIATRABALHOTOTAL (que conta dias úteis entre duas datas) e DIATRABALHO (que devolve a data depois de certo número de dias úteis). Ambas aceitam uma lista de feriados como argumento extra, que você mantém em uma aba separada. Os feriados variam por cidade e estado, então monte a lista conforme o local que importa para você.
O problema da unidade "MD"
A unidade "MD" calcula os dias restantes depois de anos e meses completos, mas é conhecida por dar resultados errados em certas combinações de datas, principalmente quando o dia da data final é menor que o da inicial. Mesmo a documentação do Excel recomenda cautela. Para obter os dias restantes, uma alternativa mais confiável é montar a data do último aniversário de mês e subtrair:
- Calcule os meses completos com "M".
- Some esses meses à data inicial, usando a função DATAM (que adiciona meses).
- Subtraia essa data da data final para obter os dias restantes.
É um passo a mais, porém seguro.
Erros frequentes
- #NÚM!: a data inicial é maior que a final.
- #VALOR!: uma das células não é data de verdade; foi digitada como texto. Reconhecer: datas de verdade alinham à direita por padrão e mudam ao trocar o formato. Veja também como corrigir em fórmula do Excel não calcula.
- Resultado diferente do esperado: lembre que "Y" e "M" contam períodos completos. De 31/01 a 28/02, por exemplo, a contagem de meses completos pode surpreender, pelo ajuste de dia.
- Formato regional: 03/04/2026 pode ser 3 de abril ou 4 de março, dependendo da configuração do programa. Confira a configuração regional ao importar dados.
Exemplos de uso no dia a dia
Em uma planilha de contratos, uma coluna com os meses de vigência e outra com os dias para o vencimento dão visão imediata do que precisa de renovação. Em um cadastro de clientes, o tempo desde a última compra, em dias, aponta quem está inativo e merece uma mensagem de retorno. Em uma lista de aniversariantes, a idade que a pessoa fará no próximo aniversário ajuda a preparar cartões e mensagens. Em todos os casos, mantenha as datas em colunas próprias e deixe a fórmula apenas calcular. Assim, quando a data muda, o resultado muda junto, sem retrabalho.
Quando usar
Use DATADIF para idade, tempo de relacionamento com cliente, tempo de contrato e tempo restante de assinaturas. Nos demais casos de dias corridos, a subtração direta é mais simples. Para organizar cadastros que usam essas contas, veja planilha de clientes. E em qualquer cálculo que afete prazos legais ou trabalhistas, confirme as regras com um profissional, porque a contagem oficial pode ter critérios próprios.