Calcular anos, meses e dias entre duas datas no excel (2023)

Antes de mais nada, é comum na nossa jornada no Excel, encontrarmos a seguinte dificuldade: temos uma data inicial e uma data final e gostaríamos de saber quantos meses temos entre uma data e outra. O problema é comum e pode ter acontecido contigo, no momento que você encontra este artigo do Excel Genial. É nele que te ensinarei a como calcular a quantidade de meses entre duas datas no Excel!

Show

  • O exemplo para descobrir o número de meses entre duas datas no Excel
  • Primeira solução: a aproximada
  • Segunda solução: a exata
  • Terceira solução para descobrir o número de meses entre duas datas no Excel: a matricial
  • O racional para o cálculo matricial
  • Entrando em detalhes para o cálculo de meses entre duas datas no Excel…
  • Meses entre duas datas no Excel em vídeo
  • Quer aprender mais?

Saiba que existem algumas formas de resolver este imbróglio. Vou apresentar algumas versões, sendo que eu tenho a minha favorita. Escolha a que melhor se adaptar à sua necessidade para calcular o número de meses entre duas datas no Excel.

Calcular anos, meses e dias entre duas datas no excel (1)

O exemplo para descobrir o número de meses entre duas datas no Excel

Em primeiro lugar, temos um exemplo e ele é bastante simples: temos a data de início e a data de fim de algum processo ou acontecimento. Posteriormente, queremos saber o número de meses entre uma data e outra.

Para esse problema, propomos a resolução de três formas: uma aproximada, uma exata e uma matricial. Assim como cada uma delas têm suas vantagens, podemos encontrar algumas desvantens.

Por fim, a figura 1 exemplifica o nosso problema e como será a planilha que veremos.

Calcular anos, meses e dias entre duas datas no excel (2)

Figura 1

Primeira solução: a aproximada

O racional para a primeira solução é converter ambas as datas (inicial e final) em meses, e depois tirar um valor do outro.

Fazemos isso convertendo o número de anos em meses e somando este valor ao mês daquela data. O processo, no entanto, deve ser feito para ambas as datas.

Por exemplo, sabendo que a data inicial está em B2, para converter essa data em meses fazemos: =12*ANO(B2)+MÊS(B2). A função ANO nos traz qual o ano daquela data (no caso, 2019) e a função MÊS nos traz o mês daquela data (no caso, 3). Ao fazer o cálculo de 12*ANO+MÊS, estamos convertendo tudo para número de meses (já que se 1 ano tem 12 meses, nada mais justo que multiplicarmos o ano por 12 para descobrir a quantos meses ele equivale). Para a data inicial do nosso exemplo, o resultado é 24231.

Calcular anos, meses e dias entre duas datas no excel (3)

De maneira idêntica à data inicial, fazemos o processo para a data final. No nosso caso, o resultado é 24251.

Assim, para encontrar o número de meses entre as datas, basta fazermos o final menos o inicial (24251 – 24231) e encontramos 20 como resposta. A figura 2 ilustra esse processo. Note que nela utilizamos células auxiliares para a conversão em meses mas você pode fazer “direto”, sem função auxiliar. A fórmula direta seria: =12*ANO(B3)+MÊS(B3)- 12*ANO(B2)-MÊS(B2).

Calcular anos, meses e dias entre duas datas no excel (4)

Figura 2

A solução 1 é dita como “aproximada” pois ela te dá um norte da resposta. Ao transformar anos e meses em meses, simplesmente desconsiderando os dias, ela gera uma aproximação. No caso, tanto faz ser dia 1 ou dia 30: o resultado de 12*ANO+MÊS será o mesmo.

Com isso, você pode usar essa solução caso queira ter uma estimativa de valor de diferença de meses entre duas datas.

Segunda solução: a exata

Para a solução que é (quase) exata, faremos a diferença entre as datas e dividiremos o resultado por 30. Trata-se de uma forma interessante de descobrir a quantidade de meses entre duas datas no Excel.

Como você já deve saber, a data em Excel é simplesmente um número que vemos de outra forma: vemos no formato de Data. Ou seja, se uma data é um número X, o dia seguinte será X+1 e assim sucessivamente.

Dessa forma, para saber quantos dias temos entre duas datas, basta fazer data final – data inicial. Essa será a quantidade de dias entre as duas datas. Dica: para saber mais sobre Formato de Números e sobretudo visão de Data no Excel, assista ao meu Curso de Excel Online Gratuito onde falo bastante sobre isso.

A fórmula

No nosso exemplo, a quantidade de dias entre a data inicial e final será representada por =B3-B2. Como queremos saber a quantidade de meses entre uma data e outra, dividimos o resultado por 30 (visto que se a diferença for 30, por exemplo, teremos 1 mês; se for 60, teremos 2 meses, e assim sucessivamente. Logo, dividimos o número de dias por 30 para saber quantos meses temos).

Essa é uma solução “quase exata”, conforme sinalizei, pois podemos ter discussão entre “quantos dias tem um mês”. Apesar da discussão por trás, é uma solução que nos atende bem.

Veja a figura 3 com a resposta, utilizando este racional. A resposta na célula F4 fica =(B3-B2)/30, visto que estamos dividindo a diferença por 30 (daí os parênteses). O resultado é um 20,666667, sinalizando 20 meses e mais 0,666667 mês. Caso você queira arredondar este número para baixo (e obter apenas 20 como resposta), use a função INT em torno do número (ficaria algo como =INT((B3-B2)/30)).

Calcular anos, meses e dias entre duas datas no excel (5)

Figura 3

Terceira solução para descobrir o número de meses entre duas datas no Excel: a matricial

Conhecer cálculo matricial e uma ou outra função do Excel pode te ajudar em algumas soluções criativas. Essa é uma delas.

Nesse sentido, a função que utilizaremos nesse caso é a DATAM. Trata-se de uma função que “joga para frente” ou “joga para trás” uma determinada data, a partir do número de meses que queremos. Por exemplo, usar DATAM de 2 meses para 05/03/2019 nos traria a data de 05/05/2019 (visto que ela jogou 2 meses para frente a data pedida, mantendo o dia do mês). Usar DATAM de -3 meses para 05/03/2019 nos traria a data de 05/12/2018, visto que ela jogou para 3 meses antes a data desejada.

Calcular anos, meses e dias entre duas datas no excel (6)

O racional para o cálculo matricial

Para resolvermos este problema com DATAM e função matricial usaremos o seguinte racional:

  • Em primeiro lugar, pediremos para o cálculo matricial calcular, usando DATAM, qual data teríamos adiantando a data inicial em alguns meses
  • Usaremos a função LIN para simular a variação de 1 mês até 50 meses, por exemplo
  • Depois que a data resultante com a função DATAM for maior que a data final, guardamos o número de meses daquele valor
  • Para todas as quantidade de meses em que a data resultante é maior que a final, calculamos a quantidade de meses mínima
  • Por fim, tiramos um para abater o mês que “passou” da data

Essa função representada em cálculo matricial fica da seguinte forma:

=MÍNIMO(SE(DATAM(B2;LIN(A1:A50))>B3;LIN(A1:A50);50))-1

Onde B2 é a data inicial, B3 é a data final e A1:A50 significa que testaremos de 1 até 50 o número de meses (caso a diferença entre data inicial e final for muito grande, você deve substituir todos os 50 da fórmula citada por um número bem maior. A ideia é “sobrar”, mesmo).

Não se esqueça: por ser um cálculo matricial devemos, após digitar a fórmula, não apertar apenas Enter para a fórmula entrar e sim Ctrl + Shift + Enter.

Veja como fica na figura 4.

Calcular anos, meses e dias entre duas datas no excel (7)

Figura 4

Entrando em detalhes para o cálculo de meses entre duas datas no Excel…

Desmembrando para você entender:

  • DATAM(B2;LIN(A1:A50)): a partir da data inicial, testaremos de 1 até 50 meses “para frente”
  • SE(DATAM(B2;LIN(A1:A50))>B3;LIN(A1:A50);50): se a data encontrada com DATAM for maior que a data final (B3), guardamos a quantidade de meses que temos (representada por LIN(X)). Caso não seja, guardamos 50. O 50 representa a linha final do intervalo, ou seja, o último mês que testaremos
  • =MÍNIMO(SE(DATAM(B2;LIN(A1:A50))>B3;LIN(A1:A50);50))-1: depois calculamos o valor mínimo dentre os que foram guardados. Como guardaremos 50 quando o resultado ainda for menor que a data final, teremos que qualquer valor que ultrapasse primeiro a data final será reconhecido como o mínimo. Ademais, conforme já dito, tiramos o 1 para voltar o mês que “passamos”

Não se esqueça que o 1 que descontamos da função é para “arredondar para baixo”. A fórmula teria lógica mesmo se não tirássemos o 1. Nosso resultado seria 21, o que significaria que seriam precisos 21 meses completos para passar da data final, a partir da data inicial.

A desvantagem desse modelo é que o cálculo matricial é bastante pesado e demanda muito do computador. Mas pelo que vimos é uma solução inteligente.

Calcular anos, meses e dias entre duas datas no excel (8)

Meses entre duas datas no Excel em vídeo

Por fim, para essa aula nós temos um conteúdo riquíssimo no YouTube. Caso você se interesse por aprender em vídeo, veja o vídeo abaixo.Não se esqueça de se inscrever na nossa página por lá, visto que sempre temos conteúdos interessantes voltados a Excel.

Quer aprender mais?

Enfim! Vimos algumas opções para resolver a dor de calcular o número de meses entre duas datas no Excel. Contudo, eu particularmente prefiro uma delas: a primeira opção (chamada de “aproximada”), onde convertemos ano e mês em meses, e subtraímos uma data de outra.

Ainda assim, você acredita que pode saber mais de Excel? Certamente você quer aprender Excel aprendendo o que realmente interessa! Dessa forma, montamos o Curso Excel Faixa Rápida para te repassar de forma organizada o que realmente você utilizará! Conheça mais detalhes clicando aqui!

Calcular anos, meses e dias entre duas datas no excel (9)

Top Articles
Latest Posts
Article information

Author: Barbera Armstrong

Last Updated: 01/05/2023

Views: 6033

Rating: 4.9 / 5 (59 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Barbera Armstrong

Birthday: 1992-09-12

Address: Suite 993 99852 Daugherty Causeway, Ritchiehaven, VT 49630

Phone: +5026838435397

Job: National Engineer

Hobby: Listening to music, Board games, Photography, Ice skating, LARPing, Kite flying, Rugby

Introduction: My name is Barbera Armstrong, I am a lovely, delightful, cooperative, funny, enchanting, vivacious, tender person who loves writing and wants to share my knowledge and understanding with you.