Como calcular a diferença entre duas datas no excel

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!

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.

Como calcular a diferença entre duas datas no excel

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.

Como calcular a diferença entre duas datas no excel
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.

Como calcular a diferença entre duas datas no excel

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).

Como calcular a diferença entre duas datas no excel
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.

Como calcular a diferença entre duas datas no excel

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)).

Como calcular a diferença entre duas datas no excel
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.

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.

Como calcular a diferença entre duas datas no excel
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.

Como calcular a diferença entre duas datas no excel

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 e te destaca! Dessa forma, montamos o Método Genial de Excel para te repassar o Excel que vai chamar a atenção do seu chefe, aumentar suas chances de promoção e te trazer reconhecimento financeiro! Conheça mais detalhes clicando aqui!

Como calcular a diferença entre duas datas no excel

Como e a fórmula para calcular a diferença entre duas datas?

Nesse caso, temos as datas: 30/01/2020 e 30/01/2022. Basta usar a fórmula: =DATADIF(30/01/2020;30/01/2022;”d”).

Como calcular a quantidade de dias entre uma data e outra?

O cálculo de dias entre duas datas usa a data inicial como o primeiro dia e data final como último dia inclusive, somando assim a estes dois dias todos os dias entre essas duas datas.