DATADIF: A Função Secreta do Excel que a Microsoft Escondeu de Você

Essa função é tão boa que nem aparece no autocomplete do Excel.

A Microsoft literalmente escondeu ela… mas você vai descobrir agora como calcular idades, tempo de serviço e diferenças de datas como um mestre.

Neste artigo iremos mostrar tudo sobre a função DATADIF, a função mais poderosa e mais secreta do Excel para trabalhar com diferença entre datas.

Por que DATADIF é uma função escondida?

DATADIF não aparece quando você digita no Excel.

Sério. Você pode começar a digitar “=DATA…” e o autocomplete vai mostrar DATA, DATAM, DATAVALOR… mas DATADIF não aparece.

É como se a Microsoft não quisesse que você descobrisse.

A origem da função escondida

DATADIF vem do antigo Lotus 1-2-3, concorrente do Excel nos anos 80 e 90.

A Microsoft incluiu a função para compatibilidade com planilhas antigas, mas nunca documentou oficialmente.

Por isso ela funciona perfeitamente, mas não aparece na lista de funções.

O que a função DATADIF faz

DATADIF calcula a diferença entre duas datas de várias formas diferentes.

Quer saber:

  • Quantos anos entre duas datas?
  • Quantos meses?
  • Quantos dias?
  • Quantos anos E meses completos?
  • Tempo de empresa de um funcionário?

DATADIF resolve tudo isso.

Sintaxe da função DATADIF

=DATADIF(data_inicial; data_final; unidade)

Parâmetros

data_inicial: A data mais antiga (ponto de partida)

DOMINE EXCEL COMIGO

QUERO APRENDER EXCEL

data_final: A data mais recente (ponto de chegada)

unidade: Código que define o tipo de cálculo (entre aspas)

IMPORTANTE: A data inicial sempre vem primeiro. Se inverter, dá erro.

Os 6 códigos de unidade

DATADIF aceita 6 códigos diferentes, cada um com uma função específica.

“Y” – Anos completos

=DATADIF(data_inicial; data_final; “Y”)

“Y” vem de Years (anos em inglês).

Retorna quantos anos completos existem entre as datas.

Exemplo:

Data inicial: 15/02/2019

Data final: 31/12/2025

=DATADIF(“15/02/2019″;”31/12/2025″;”Y”)

Resultado: 6 anos

“M” – Meses totais

=DATADIF(data_inicial; data_final; “M”)

“M” vem de Months (meses).

Retorna o total de meses entre as datas.

Exemplo:

Mesmas datas acima.

=DATADIF(“15/02/2019″;”31/12/2025″;”M”)

Resultado: 82 meses (6 anos × 12 + 10 meses)

“D” – Dias totais

=DATADIF(data_inicial; data_final; “D”)

“D” vem de Days (dias).

Retorna o total de dias entre as datas.

Exemplo:

=DATADIF(“15/02/2019″;”31/12/2025″;”D”)

Resultado: 2.510 dias (aproximadamente)

“YM” – Meses restantes após anos completos

=DATADIF(data_inicial; data_final; “YM”)

“YM” = Years-Months (meses após os anos).

Ignora os anos completos e retorna apenas os meses restantes.

Exemplo:

=DATADIF(“15/02/2019″;”31/12/2025″;”YM”)

Resultado: 10 meses (os meses de fevereiro a dezembro)

Perfeito para combinar com “Y” e mostrar “6 anos e 10 meses”.

“MD” – Dias restantes após meses completos

=DATADIF(data_inicial; data_final; “MD”)

“MD” = Months-Days (dias após os meses).

Ignora anos e meses completos, retorna apenas os dias restantes.

Exemplo:

=DATADIF(“15/02/2019″;”31/12/2025″;”MD”)

Resultado: 16 dias (de 15 a 31)

“YD” – Dias restantes após anos completos

=DATADIF(data_inicial; data_final; “YD”)

“YD” = Years-Days (dias após os anos).

Ignora os anos completos e retorna os dias restantes.

Exemplo:

=DATADIF(“15/02/2019″;”31/12/2025″;”YD”)

Resultado: 320 dias (de 15/02 a 31/12 dentro de um ciclo anual)

A fórmula mais útil: Anos e Meses combinados

Para a maioria das aplicações, você quer mostrar anos E meses juntos.

Fórmula completa

=DATADIF(B2;C2;”Y”) & ” anos e ” & DATADIF(B2;C2;”YM”) & ” meses”

Onde B2 é a data inicial e C2 é a data final.

Exemplo prático

B2: 15/02/2019

C2: 31/12/2025

Resultado: “6 anos e 10 meses”

Perfeito para relatórios de RH, contratos, idades exatas.

Aplicações práticas da DATADIF

1. Calcular idade exata

=DATADIF(data_nascimento; HOJE(); “Y”) & ” anos”

Mostra a idade atual da pessoa em anos completos.

Para mostrar anos e meses:

=DATADIF(data_nascimento; HOJE(); “Y”) & ” anos e ” & DATADIF(data_nascimento; HOJE(); “YM”) & ” meses”

2. Tempo de serviço de funcionários

=DATADIF(data_admissão; HOJE(); “Y”) & ” anos e ” & DATADIF(data_admissão; HOJE(); “YM”) & ” meses”

Essencial para RH calcular tempo de casa, direito a férias, adicional por tempo de serviço.

3. Duração de contratos

=DATADIF(data_início; data_fim; “M”) & ” meses”

Quanto tempo durou ou vai durar um contrato.

4. Idade de bebês

=DATADIF(data_nascimento; HOJE(); “M”) & ” meses”

Para bebês, é comum medir idade em meses nos primeiros anos.

5. Prazo de projetos

=DATADIF(início_projeto; fim_projeto; “D”) & ” dias”

Quantos dias levou um projeto do início ao fim.

Como usar DATADIF (passo a passo)

Passo 1: Digite manualmente

Não vai aparecer no autocomplete. Você precisa digitar =DATADIF( do zero.

Passo 2: Informe a data inicial

Pode ser uma referência de célula (A2) ou uma data entre aspas (“15/02/2019”).

Passo 3: Ponto e vírgula

;

Passo 4: Informe a data final

Também pode ser célula ou data direta.

Use HOJE() se quiser calcular até hoje.

Passo 5: Ponto e vírgula

;

Passo 6: Código entre aspas

“Y”, “M”, “D”, “YM”, “MD” ou “YD” – sempre em maiúsculas e entre aspas.

Passo 7: Fecha parênteses e Enter

) e pressione Enter.

Erros comuns com DATADIF

Erro 1: Usar minúsculas

Errado: =DATADIF(A2;B2;”y”)

Correto: =DATADIF(A2;B2;”Y”)

A função é case sensitive. Use sempre MAIÚSCULAS.

Erro 2: Inverter as datas

Errado: =DATADIF(data_final; data_inicial; “Y”)

Isso retorna erro #NÚM!

Correto: =DATADIF(data_inicial; data_final; “Y”)

Data mais antiga sempre primeiro.

Erro 3: Esquecer as aspas no código

Errado: =DATADIF(A2;B2;Y)

Correto: =DATADIF(A2;B2;”Y”)

O código precisa estar entre aspas.

Erro 4: Confiar no autocomplete

DATADIF não vai aparecer. Digite manualmente e confie que funciona.

DATADIF funciona em todas as versões?

Sim! A função funciona em:

  • Excel 2003
  • Excel 2007
  • Excel 2010
  • Excel 2013
  • Excel 2016
  • Excel 2019
  • Excel 2021
  • Excel 365
  • Excel para Mac
  • Excel Online (versão web)

Mesmo sendo “escondida”, funciona em absolutamente todas as versões.

Alternativas à DATADIF

Se por algum motivo você não quiser usar DATADIF, existem alternativas:

Para anos

=INT((data_final – data_inicial)/365,25)

Menos preciso que DATADIF por causa de anos bissextos.

Para meses

*=(ANO(data_final)-ANO(data_inicial))12 + MÊS(data_final)-MÊS(data_inicial)

Funciona, mas é mais complexo.

Para dias

=data_final – data_inicial

Simples subtração funciona para dias totais.

Mas DATADIF é mais elegante e precisa.

Por que profissionais de RH amam DATADIF

Se você trabalha com Recursos Humanos e não conhecia DATADIF, sua vida acabou de mudar.

Aplicações em RH:

  • Tempo de casa para calcular férias proporcionais
  • Idade para verificar aposentadoria
  • Experiência profissional em currículos
  • Tempo em cada cargo para promoções
  • Licenças e afastamentos
  • Contratos de experiência (45 dias, 90 dias)

Uma única função resolve dezenas de cálculos que RH faz diariamente.

Comparação: com DATADIF vs sem DATADIF

Sem DATADIF (trabalhoso)

Calcular “6 anos e 10 meses” manualmente:

  1. Contar anos: (2025-2019) = 6
  2. Contar meses: (12-2) = 10
  3. Digitar manualmente: “6 anos e 10 meses”

Repetir para cada funcionário. Demorado e com risco de erro.

Com DATADIF (automático)

=DATADIF(B2;C2;”Y”) & ” anos e ” & DATADIF(B2;C2;”YM”) & ” meses”

Arrasta para 500 funcionários. Instantâneo e sem erros.

Compartilhe ou Comente

Se você curtiu esse artigo aonde mostramos a função DATADIF, a função secreta que a Microsoft escondeu de você no Excel, 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.

Você já conhecia DATADIF ou está descobrindo agora? Trabalha com RH e vai usar essa função? Conta para nós nos comentários!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *