Pular para o conteúdo
Função por FunçãoDicionário de funções de planilha em português
DATEDIF

Função DATADIF do Excel

O que a função DATADIF faz?

A função DATADIF calcula a diferença entre duas datas e devolve o resultado em anos completos ("Y"), meses completos ("M") ou dias ("D"). É a base de contas de idade e tempo de contrato. O Excel a mantém por compatibilidade com pastas antigas e avisa que ela pode errar em alguns casos.

Nome em portuguêsDATADIF
Nome em inglêsDATEDIF
CategoriaData e hora
RetornaNúmero inteiro (anos, meses ou dias, conforme a unidade)
Existe desdeExcel 2007 ou anterior · existe no Excel 2013

Qual é a sintaxe da função DATADIF?

Excel em português do BrasilDATADIF(data_inicial; data_final; unidade)
Excel em inglêsDATEDIF(start_date, end_date, unit)

No Excel em português do Brasil os argumentos se separam com ponto e vírgula; em inglês, com vírgula. Argumentos entre colchetes são opcionais.

ArgumentoObrigatórioO que aceita
data_inicialSimA data de início do período. Pode ser uma célula com data, o resultado de outra função ou um número de série.
data_finalSimA data de fim do período. Precisa ser igual ou posterior à data inicial, senão o resultado é #NÚM!.
unidadeSimTexto entre aspas que define o resultado: "Y" anos completos, "M" meses completos, "D" dias, "YM" meses que sobram depois dos anos completos. Existem também "MD" e "YD", mas a Microsoft não recomenda "MD".

Como usar a função DATADIF na prática?

Exemplo 1: Anos, meses e dias entre duas datas

Planilha do exemplo 1 da função DATADIF
ABCDEF
1 ContratoInícioFimAnosMesesDias
2 Aluguel15/03/202221/10/20264551.681
3 Seguro31/01/202528/02/2026112393
Fórmula na célula D2 =DATADIF(B2;C2;"Y") Em inglês: =DATEDIF(B2,C2,"Y")
Resultado: 4
Fórmula na célula E2 =DATADIF(B2;C2;"M") Em inglês: =DATEDIF(B2,C2,"M")
Resultado: 55
Fórmula na célula F2 =DATADIF(B2;C2;"D") Em inglês: =DATEDIF(B2,C2,"D")
Resultado: 1.681
Fórmula na célula D3 =DATADIF(B3;C3;"Y") Em inglês: =DATEDIF(B3,C3,"Y")
Resultado: 1
Fórmula na célula E3 =DATADIF(B3;C3;"M") Em inglês: =DATEDIF(B3,C3,"M")
Resultado: 12
Fórmula na célula F3 =DATADIF(B3;C3;"D") Em inglês: =DATEDIF(B3,C3,"D")
Resultado: 393

Do aluguel, de 15/03/2022 a 21/10/2026, passaram 4 anos completos, 55 meses completos (4 anos e 7 meses) e 1.681 dias. No seguro, de 31/01/2025 a 28/02/2026, há 1 ano completo e 12 meses completos, porque fevereiro não tem dia 31 e o 13º mês ainda não fechou. Os dias somam 393.

Exemplo 2: Tempo de casa em anos e meses

Planilha do exemplo 2 da função DATADIF
ABCD
1 PessoaAdmissãoReferênciaTempo de casa
2 Marta18/02/201921/10/20267 ano(s) e 8 mês(es)
3 Paulo05/09/202421/10/20262 ano(s) e 1 mês(es)
4 Alice01/12/202521/10/20260 ano(s) e 10 mês(es)
Fórmula na célula D2 =DATADIF(B2;C2;"Y")&" ano(s) e "&DATADIF(B2;C2;"YM")&" mês(es)" Em inglês: =DATEDIF(B2,C2,"Y")&" ano(s) e "&DATEDIF(B2,C2,"YM")&" mês(es)"
Resultado: 7 ano(s) e 8 mês(es)
Fórmula na célula D3 =DATADIF(B3;C3;"Y")&" ano(s) e "&DATADIF(B3;C3;"YM")&" mês(es)" Em inglês: =DATEDIF(B3,C3,"Y")&" ano(s) e "&DATEDIF(B3,C3,"YM")&" mês(es)"
Resultado: 2 ano(s) e 1 mês(es)
Fórmula na célula D4 =DATADIF(B4;C4;"Y")&" ano(s) e "&DATADIF(B4;C4;"YM")&" mês(es)" Em inglês: =DATEDIF(B4,C4,"Y")&" ano(s) e "&DATEDIF(B4,C4,"YM")&" mês(es)"
Resultado: 0 ano(s) e 10 mês(es)

A unidade "Y" dá os anos completos e a unidade "YM" dá os meses que sobram depois deles. Marta tem 92 meses completos, ou seja, 7 anos e 8 meses. Paulo tem 25 meses, que são 2 anos e 1 mês. Alice tem 10 meses, então o resultado é 0 ano e 10 meses. O operador & junta os pedaços em um texto.

Exemplo 3: O mês só conta quando o dia chega

Planilha do exemplo 3 da função DATADIF
ABC
1 InícioFimMeses completos
2 31/01/202628/02/20260
3 31/01/202631/03/20262
4 15/01/202614/02/20260
5 15/01/202615/02/20261
Fórmula na célula C2 =DATADIF(A2;B2;"M") Em inglês: =DATEDIF(A2,B2,"M")
Resultado: 0
Fórmula na célula C3 =DATADIF(A3;B3;"M") Em inglês: =DATEDIF(A3,B3,"M")
Resultado: 2
Fórmula na célula C4 =DATADIF(A4;B4;"M") Em inglês: =DATEDIF(A4,B4,"M")
Resultado: 0
Fórmula na célula C5 =DATADIF(A5;B5;"M") Em inglês: =DATEDIF(A5,B5,"M")
Resultado: 1

Um mês só conta como completo quando a data final alcança o mesmo dia do mês da data inicial. De 31/01 a 28/02 o dia 28 não chega ao 31, então são 0 meses. De 31/01 a 31/03 são 2. De 15/01 a 14/02 faltou 1 dia (0 meses) e de 15/01 a 15/02 o dia bateu (1 mês).

Quais erros a função DATADIF costuma dar?

#NÚM!

Por que acontece: A data inicial é posterior à data final. O mesmo erro aparece quando a unidade informada não é uma das aceitas.

Como corrigir: Confira a ordem das datas (início primeiro, fim depois) e use uma unidade válida: "Y", "M", "D", "YM", "MD" ou "YD".

Exemplo que gera o erro, na célula C2=DATADIF(A2;B2;"D")Resultado: #NÚM!

#VALOR!

Por que acontece: Uma das datas é um texto que o Excel não reconhece como data.

Como corrigir: Use datas de verdade: células com data válida, a função DATA ou DATA.VALOR para converter o texto.

Exemplo que gera o erro, na célula C2=DATADIF(A2;B2;"D")Resultado: #VALOR!

Resultado impreciso com a unidade "MD"

Por que acontece: A Microsoft avisa que a unidade "MD" pode devolver número negativo, zero ou resultado impreciso, e não recomenda usá-la.

Como corrigir: Para os dias que sobram depois do último mês completo, a Microsoft sugere subtrair da data final o primeiro dia do mês da data final, obtido com DATA(ANO(data_final); MÊS(data_final); 1).

DATADIF no Google Planilhas e no LibreOffice Calc

ProgramaNome da funçãoObservação
ExcelDATADIF (DATEDIF)Referência deste dicionário.
Google PlanilhasDATADIF (DATEDIF)Existe com a mesma sintaxe e as unidades "Y", "M", "D", "MD", "YM" e "YD". A página do Google explica que meses e anos só são contados quando o dia da data final chega ao dia da data inicial. Documentação do Google
LibreOffice CalcDATADIF (DATEDIF)No Calc em português a função também chama DATADIF e está disponível desde o LibreOffice 3.6. A ajuda diz que as unidades ("d", "m", "y", "ym", "md", "yd") valem independentemente do idioma e que a data final deve ser posterior à inicial. Disponível desde o LibreOffice 3.6. Ajuda do LibreOffice

A função DATADIF existe no Excel 2013?

Existe no Excel 2013 Excel 2007 ou anterior

A lista oficial de funções do Excel traz DATADIF sem marcador de versão, o que indica que ela existe desde antes do Excel 2010 e, portanto, também no Excel 2013. A Microsoft diz que a função existe para dar suporte a pastas de trabalho do Lotus 1-2-3.

Veja todas as funções por versão em funções do Excel por versão.

O que mais vale saber sobre a DATADIF?

  • Para a quantidade de dias entre duas datas, não precisa de DATADIF: basta subtrair a data anterior da posterior.
  • A Microsoft explica que o Excel mantém DATADIF para dar suporte a pastas de trabalho antigas do Lotus 1-2-3 e que ela pode calcular resultados incorretos em certos casos.
  • Digite o nome da função e os argumentos à mão: DATADIF pode não aparecer entre as sugestões do Excel ao digitar, mas funciona normalmente.
  • Para a idade em anos completos, use DATADIF(nascimento; HOJE(); "Y"). Para anos e meses, combine as unidades "Y" e "YM".

Perguntas frequentes sobre a DATADIF

A função DATADIF existe no Excel?

Sim. A Microsoft documenta a função e diz que a mantém para dar suporte a pastas de trabalho antigas do Lotus 1-2-3. Ela pode não aparecer entre as sugestões ao digitar, mas funciona quando a fórmula é escrita por inteiro.

Como calcular a idade exata no Excel?

Use =DATADIF(A2;HOJE();"Y"), com a data de nascimento em A2. A unidade "Y" devolve os anos completos. Para anos e meses, junte "Y" e "YM" em um texto com o operador &.

Por que a Microsoft não recomenda a unidade "MD"?

Porque ela pode devolver um número negativo, zero ou um resultado impreciso. Para os dias depois do último mês completo, a página da Microsoft sugere subtrair da data final o primeiro dia do mês dela.

Funções relacionadas

Ver todas as funções de data e hora

Fontes consultadas

Consultado em 21/10/2026. Os resultados dos exemplos acima foram calculados por programa, a partir dos dados mostrados em cada tabela. Encontrou algo errado? Escreva para contato@office2013.com.br.