Guia do Excel

ANOS, MESES E DIAS entre duas datas no Excel! DATADIF

O DATADIF é uma função para calcular a diferença entre datas no Excel em forma textual, por exemplo: 1 ano, 7 meses e 5 dias.

MR
Marcos Rieper

Especialista em Excel

Publicado em 24 de agosto de 2026 14 min de leitura
Planilha para baixar

DATADIF Diferença entre Datas

Baixe agora — o link vai direto para o seu e-mail.

  • Download 100% gratuito
  • Arquivo pronto para usar no Excel
  • Enviamos o link no seu e-mail
43 KB · Excel 2007 ou superior

Receba a planilha no seu e-mail

Como calcular diferença de datas com DATADIF no Excel

Calcular a diferença entre duas datas no Excel parece simples quando precisamos apenas saber quantos dias se passaram. O problema começa quando o objetivo é obter o resultado de forma mais natural, considerando anos, meses e dias completos.

É justamente nesse cenário que a função DATADIF se destaca. Com ela, podemos calcular a diferença entre duas datas em anos, meses ou dias e, principalmente, combinar diferentes unidades para chegar a um resultado como 1 ano, 10 meses e 7 dias.

A DATADIF é uma função pouco conhecida por muitos usuários do Excel porque possui uma característica incomum: ela é uma função oculta. Isso significa que não aparece normalmente na lista de funções nem no recurso de preenchimento automático do Excel. Portanto, é necessário conhecer sua sintaxe para utilizá-la.

Neste guia, você vai aprender de forma prática como usar a função DATADIF no Excel, entender cada uma de suas unidades, calcular anos, meses e dias entre duas datas, conhecer os cuidados mais importantes e transformar a fórmula em uma função personalizada usando LAMBDA.

Também vamos mostrar como criar uma função própria, chamada fnData, para que você possa reutilizar esse cálculo em diferentes planilhas sem precisar copiar uma fórmula extensa.

O que é a função DATADIF no Excel?

A DATADIF é uma função utilizada para calcular a diferença entre duas datas de acordo com uma unidade específica. Dependendo do parâmetro informado, ela pode retornar a quantidade de anos, meses ou dias existentes entre a data inicial e a data final.

Um dos grandes diferenciais da DATADIF é a possibilidade de calcular partes diferentes de um intervalo. Por exemplo, podemos descobrir quantos anos completos existem entre duas datas e, depois, quantos meses e dias restam após essa contagem.

Esse comportamento torna a função muito útil em situações como:

  • calcular idade em anos, meses e dias;

  • calcular tempo de cadastro;

  • calcular tempo de contrato;

  • calcular tempo de relacionamento com um cliente;

  • calcular tempo de serviço;

  • calcular períodos entre eventos;

  • calcular a duração de registros e atividades;

  • criar indicadores de tempo em planilhas profissionais.

Um ponto importante é que a DATADIF não deve ser confundida com uma simples subtração de datas. Quando fazemos data_final - data_inicial, obtemos a quantidade de dias entre as datas. Já a DATADIF permite trabalhar com diferentes unidades e interpretar o período de maneira mais estruturada.

História da Função DATADIF no Excel

A função DATADIF tem uma história diferente de muitas funções tradicionais do Excel. Ela surgiu originalmente no Lotus 1-2-3, um dos principais programas de planilhas das décadas de 1980 e 1990.

Posteriormente, a função foi incorporada ao Excel com o objetivo de manter a compatibilidade com planilhas antigas desenvolvidas no Lotus 1-2-3.

Essa origem ajuda a explicar por que a função possui um comportamento diferente de várias outras funções do Excel. Ela continua disponível e pode ser utilizada normalmente, mas não aparece da mesma forma na interface do programa.

Apesar de ser uma função oculta, a DATADIF possui documentação oficial da Microsoft. Você pode consultar a documentação diretamente na página da Microsoft:

DATADIF.

Portanto, o fato de a função não aparecer no preenchimento automático não significa que ela não seja uma função válida do Excel. É necessário apenas conhecer sua sintaxe e utilizá-la diretamente na fórmula.

Como funciona a sintaxe da DATADIF

A função possui três parâmetros:

DATADIF(data_inicio;data_fim;unidade)

  1. data_inicio: é a primeira data do período que será analisado.

  2. data_fim: é a data final do período que será analisado.

  3. unidade: define qual tipo de diferença será calculado.

O terceiro argumento é o mais interessante. É nele que informamos se queremos calcular anos, meses, dias ou partes específicas do intervalo.

Unidades da função DATADIF

A DATADIF possui seis unidades principais. Cada uma produz um resultado diferente e, por isso, entender esses parâmetros é fundamental para utilizar a função corretamente.

Unidade

Retorna

"Y"

O número de anos completos no período.

"M"

O número de meses completos no período.

"D"

O número de dias no período.

"MD"

A diferença entre os dias na data_inicial e data_final. Os meses e os anos das datas são ignorados.

"YM"

A diferença entre os meses na data_inicial e data_final. Os dias e os anos das datas são ignorados.

"YD"

A diferença entre os dias da data_inicial e data_final. Os anos das datas são ignorados.

Os parâmetros Y, M e D são os mais diretos. Eles permitem obter respectivamente anos completos, meses completos e dias no intervalo.

Já os parâmetros MD, YM e YD são especialmente úteis quando queremos decompor um período em partes.

Entenda o parâmetro Y da DATADIF

Quando utilizamos "Y", a DATADIF retorna a quantidade de anos completos existentes entre a data inicial e a data final.

Por exemplo, se uma pessoa possui uma data de nascimento e queremos saber quantos anos completos ela tem, a unidade Y é adequada para esse cálculo.

O ponto importante é a palavra completos. A função não simplesmente divide o número de dias por 365. Ela considera as datas e verifica quantos aniversários completos ocorreram no período.

Por isso, a DATADIF é muito mais apropriada para cálculos de idade e períodos em anos do que uma divisão simples da quantidade de dias.

Entenda o parâmetro M da DATADIF

Com a unidade "M", a função retorna a quantidade de meses completos entre as duas datas.

Esse cálculo é diferente de simplesmente multiplicar a quantidade de anos por 12. A função trabalha diretamente com as datas e considera o período completo existente entre elas.

Quando precisamos apenas do total de meses, o parâmetro M resolve o problema. Entretanto, para criar um resultado dividido em anos, meses e dias, normalmente utilizamos Y + YM + MD.

Entenda o parâmetro D da DATADIF

Com a unidade "D", a função retorna a quantidade total de dias existente entre a data inicial e a data final.

Por exemplo:

=DATADIF(D32;HOJE();"D")

Nesse caso, o resultado representa o número total de dias transcorridos desde a data armazenada em D32 até a data atual.

Esse método é útil quando o objetivo é obter somente a duração total em dias, sem dividir o resultado em anos e meses.

Como funciona o parâmetro MD?

O parâmetro "MD" é um dos mais interessantes para montar um cálculo completo de anos, meses e dias.

Ele retorna a diferença entre os dias das duas datas, ignorando os meses e os anos.

Na prática, podemos utilizar o MD depois de calcular os anos completos e os meses completos. Assim, conseguimos descobrir quantos dias sobraram.

Por isso, quando queremos produzir um resultado como 1 ano, 10 meses e 7 dias, utilizamos o MD para calcular a última parte do intervalo.

Como funciona o parâmetro YM?

O parâmetro "YM" retorna a diferença em meses, ignorando os anos e os dias das datas.

Ele é especialmente importante quando já calculamos os anos completos com a unidade Y e precisamos descobrir quantos meses permanecem no período.

Por exemplo, se o intervalo possui 1 ano e 10 meses completos, o parâmetro Y pode retornar 1, enquanto o parâmetro YM retorna 10.

Essa combinação permite construir uma descrição muito mais natural do período.

Como funciona o parâmetro YD?

O parâmetro "YD" calcula a diferença em dias ignorando os anos das datas.

Essa unidade pode ser útil quando o objetivo é analisar o intervalo de dias sem considerar a diferença de anos. Entretanto, ela possui uma finalidade diferente do MD.

Para decompor uma data em anos, meses e dias, a combinação mais comum neste exemplo é Y + YM + MD.

Material gratuito

Planilha de Controle Financeiro no Excel

Tenha um controle bonito e completo do seu financeiro.

  • Categorias e subcategorias já configuradas
  • Planilhas separadas por tabela (configuração, lançamentos, resumo)
  • Personalize com suas próprias categorias e ícones

Baixe grátis — receba o link no seu e-mail

Como calcular a diferença de anos, meses e dias no Excel

Agora vamos aplicar a DATADIF em um exemplo prático.

Imagine que temos um estoque com itens cadastrados há algum tempo e queremos descobrir há quanto tempo cada cadastro existe.

O objetivo é apresentar o resultado em um formato fácil de entender, como:

1 ano 10 meses 7 dias

Considere que na célula D32 temos a data 17/10/2024 e queremos calcular o período até a data atual.

Para calcular a quantidade de anos completos, utilizamos:

  • DATADIF(D32;HOJE();"Y")

O resultado representa os anos completos existentes entre a data armazenada em D32 e a data atual.

Agora precisamos descobrir quantos meses sobraram depois da contagem dos anos. Para isso, usamos:

  • DATADIF(D32;HOJE();"YM")

Por fim, precisamos calcular os dias restantes depois de considerar os anos e os meses:

  • DATADIF(D32;HOJE();"MD")

Temos, portanto, três cálculos complementares:

  • Y: anos completos;

  • YM: meses restantes;

  • MD: dias restantes.

O próximo passo é juntar os três resultados em uma única célula e ainda tratar corretamente singular e plural.

Para realizarmos o cálculo conjunto da fórmula e termos a quantidade de anos, meses e dias temos a fórmula seguinte:

=SE(DATADIF(D32;HOJE();"Y") = 0;""; SE(DATADIF(D32;HOJE();"Y")=1;DATADIF(D32;HOJE();"Y") & " ano "; DATADIF(D32;HOJE();"Y") & " anos ")) & SE(DATADIF(D32;HOJE();"YM") = 0;""; SE(DATADIF(D32;HOJE();"YM")=1;DATADIF(D32;HOJE();"YM") & " mês "; DATADIF(D32;HOJE();"YM") & " meses ")) & SE(DATADIF(D32;HOJE();"MD") = 0;""; SE(DATADIF(D32;HOJE();"MD")=1;DATADIF(D32;HOJE();"MD") & " dia "; DATADIF(D32;HOJE();"MD") & " dias "))

O resultado será apresentado no formato:

1 ano 10 meses 7 dias

Observe que a fórmula também trata situações em que o resultado é zero. Se não houver anos, meses ou dias para exibir, a fórmula evita apresentar informações desnecessárias.

Por que usar DATADIF em vez de simplesmente subtrair datas?

Uma subtração simples entre datas é suficiente quando queremos saber a quantidade total de dias. Porém, ela não resolve diretamente a necessidade de apresentar o período em anos, meses e dias.

Imagine, por exemplo, que o resultado seja apresentado como 1 ano, 10 meses e 7 dias. Fazer esse cálculo manualmente exigiria separar o período em diferentes componentes e tratar corretamente meses com quantidades diferentes de dias.

A DATADIF foi criada justamente para trabalhar com esse tipo de cálculo. Ela permite que o Excel faça a decomposição do período utilizando unidades específicas.

Isso torna a função especialmente interessante em planilhas profissionais nas quais a informação precisa ser apresentada de maneira clara para o usuário final.

Função LAMBDA no Excel para diferença de anos, meses e dias

Agora temos um segundo desafio. A fórmula anterior funciona, mas é relativamente grande. Se você precisar utilizá-la em várias planilhas ou em várias áreas da mesma pasta de trabalho, copiar a fórmula repetidamente pode gerar retrabalho e dificultar a manutenção.

É nesse ponto que entra a função LAMBDA.

A LAMBDA permite criar funções personalizadas utilizando fórmulas do próprio Excel, sem a necessidade de escrever VBA.

Para este exemplo, podemos transformar toda a fórmula em uma função reutilizável que receberá apenas duas informações: a data inicial e a data final.

Para isso criamos a seguinte função Lambda:

=LAMBDA(dtIni;dtFim;SE(DATADIF(dtIni;dtFim;"Y") = 0;""; SE(DATADIF(dtIni;dtFim;"Y")=1;DATADIF(dtIni;dtFim;"Y") & " ano "; DATADIF(dtIni;dtFim;"Y") & " anos ")) & SE(DATADIF(dtIni;dtFim;"YM") = 0;""; SE(DATADIF(dtIni;dtFim;"YM")=1;DATADIF(dtIni;dtFim;"YM") & " mês "; DATADIF(dtIni;dtFim;"YM") & " meses ")) & SE(DATADIF(dtIni;dtFim;"MD") = 0;""; SE(DATADIF(dtIni;dtFim;"MD")=1;DATADIF(dtIni;dtFim;"MD") & " dia "; DATADIF(dtIni;dtFim;"MD") & " dias ")))

A principal diferença está no início da fórmula:

LAMBDA(dtIni;dtFim;

Esses dois parâmetros representam a data inicial e a data final. Em vez de deixar a fórmula presa às células D32 e à função HOJE(), transformamos essas referências em argumentos que podem ser informados pelo usuário.

Essa mudança deixa a fórmula muito mais reutilizável.

Como criar uma função personalizada com LAMBDA

Depois de criar a fórmula LAMBDA, precisamos armazená-la no Excel para transformá-la em uma função personalizada.

Siga este passo a passo:

  1. Abra a guia Fórmulas.

  2. Acesse o Gerenciador de Nomes.

  3. Selecione Definir Nome.

  4. Informe um nome para a função.

  5. Utilize, por exemplo, o nome fnData.

  6. Na área de referência, informe a fórmula LAMBDA apresentada anteriormente.

  7. Confirme a criação da função.

A partir desse momento, você não precisa mais utilizar toda a fórmula sempre que quiser calcular a diferença entre duas datas.

Você poderá chamar sua função personalizada utilizando apenas:

=fnData(E35;HOJE())

O primeiro argumento representa a data inicial e o segundo representa a data final.

Também é possível utilizar duas células:

=fnData(A2;B2)

Essa abordagem torna a planilha muito mais organizada, principalmente quando o mesmo cálculo aparece diversas vezes.

Vantagens de transformar a fórmula em uma função LAMBDA

O uso da LAMBDA traz uma vantagem importante: reutilização.

Em vez de manter uma fórmula extensa espalhada por diferentes células, você cria uma função com um nome simples e utiliza esse nome sempre que precisar.

Isso traz benefícios para planilhas profissionais:

  • reduz fórmulas repetidas;

  • facilita a leitura da planilha;

  • centraliza a lógica do cálculo;

  • facilita a manutenção;

  • permite reutilizar a mesma função em diferentes áreas da pasta de trabalho;

  • evita a necessidade de VBA para esse tipo de função personalizada.

Além disso, a utilização de nomes como fnData deixa a fórmula muito mais fácil de interpretar. Ao encontrar =fnData(E35;HOJE()), o usuário consegue entender que existe uma função personalizada para calcular o período entre duas datas.

Biblioteca LAMBDA Excel Gratuita

Se você trabalha frequentemente com funções personalizadas, pode ser interessante manter uma biblioteca organizada das suas funções LAMBDA.

No Guia do Excel criamos um suplemento gratuito que permite ter uma biblioteca de suas próprias funções LAMBDA e também utilizar funções disponibilizadas gratuitamente para a comunidade.

Você pode conhecer e baixar esta biblioteca Lambda seguindo este artigo:

Biblioteca de Funções LAMBDA no Excel (Guia do Excel) | Guia do Excel.

A biblioteca conta com diversas funções e também permite ampliar sua coleção de funções personalizadas. Essa abordagem é especialmente útil para quem cria planilhas profissionais, sistemas em Excel ou modelos que precisam ser reutilizados em diferentes projetos.

Em vez de reconstruir a mesma solução várias vezes, você pode criar uma função uma vez e utilizá-la sempre que necessário.

instalar funções lambda excel

Cuidados importantes ao usar DATADIF

Apesar de ser uma função muito útil, existem alguns cuidados que devem ser considerados.

O primeiro é a ordem das datas. A data inicial deve representar o início do período e a data final deve ser posterior à data inicial. Se a data inicial for maior que a data final, a função poderá apresentar erro.

Outro cuidado é entender exatamente o que cada unidade calcula. Não basta trocar "Y" por "M" ou "MD" sem compreender o resultado esperado. Cada parâmetro possui uma lógica diferente.

Também é importante diferenciar MD de YD. Os dois trabalham com dias, mas ignoram componentes diferentes das datas. Para o cálculo apresentado neste artigo, em que queremos decompor o intervalo em anos, meses e dias, utilizamos Y, YM e MD.

Por fim, lembre-se de que a DATADIF é uma função oculta. Portanto, não espere que o Excel sugira a função enquanto você começa a digitá-la. Conhecer a sintaxe é parte importante do uso dessa função.

DATADIF no Excel: resumo prático

Se você precisa guardar apenas o essencial deste artigo, utilize esta regra:

  • Y → calcula os anos completos.

  • M → calcula os meses completos.

  • D → calcula o total de dias.

  • YM → calcula os meses restantes, ignorando anos e dias.

  • MD → calcula os dias restantes, ignorando meses e anos.

  • YD → calcula a diferença em dias, ignorando os anos.

Para apresentar uma diferença no formato anos, meses e dias, a combinação principal é:

DATADIF + "Y" + "YM" + "MD"

Essa combinação permite transformar duas datas em uma informação muito mais fácil de interpretar.

Conclusão: use a DATADIF para trabalhar melhor com datas no Excel

A função DATADIF é uma ferramenta extremamente útil para quem precisa calcular períodos entre datas no Excel. Mesmo sendo uma função oculta e pouco conhecida, ela resolve de maneira prática problemas que seriam trabalhosos de desenvolver apenas com operações tradicionais de datas.

Seu principal diferencial está na capacidade de separar um período em anos, meses e dias. Com a combinação das unidades Y, YM e MD, conseguimos transformar duas datas em uma descrição clara do período transcorrido.

Além disso, quando combinamos a DATADIF com a função LAMBDA, podemos criar funções personalizadas e reutilizáveis. Essa é uma técnica especialmente interessante para quem trabalha com Excel profissionalmente e deseja reduzir fórmulas extensas e repetitivas.

Portanto, se você precisa calcular idade, tempo de contrato, tempo de cadastro, tempo de serviço ou qualquer outro intervalo entre duas datas, vale a pena conhecer a DATADIF.

O mais importante é entender a lógica de cada unidade e escolher o parâmetro adequado para o resultado que você deseja apresentar.

Download Planilha DATADIF Excel

Para praticar os exemplos apresentados neste artigo e entender na prática como calcular a diferença entre datas no Excel, faça o download da planilha DATADIF.

Planilha para baixar

DATADIF Diferença entre Datas

Baixe agora — o link vai direto para o seu e-mail.

  • Download 100% gratuito
  • Arquivo pronto para usar no Excel
  • Enviamos o link no seu e-mail
43 KB · Excel 2007 ou superior

Receba a planilha no seu e-mail

Este conteúdo foi útil?

Continue lendo