Excel – Somando Meses com a função DATA()

Função DATA no Excel

Trabalhar com datas sempre foi algo instigante no Excel. O melhor de tudo é que esta máxima se aplica pela facilidade e dificuldade de aplicar cálculos sobre valores de data.

Como o mecanismo que define as datas no Excel é baseado em número sequênciais, algumas tarefas como soma ou subtração de dias ou horas é uma tarefa simples. Já quando se trata de meses ou anos, cuja valores são incertos e dependem de cada mês ou ano, a coisa complica um pouco.

Por exemplo, não é garantido que daqui a um mês seja a data de hoje mais 30 dias, pois alguns meses possuem 31 dias e outros 28, como fevereiro, ou pior pois dependendo do ano, pode ter 29.

Neste caso, a função DATA() auxilia na construção de datas baseadas em informações de ano, mês e dia. Por exemplo, a seguinte função:

=DATA(2008;12;01)

Retorna a data:

01/12/2008

Até aí é óbvio, mas a função data tem algumas características interessantes. Por exemplo, se quiséssemos somar um mês a esta data, teríamos a seguinte função:

=DATA(2008;12+1;01)

Apesar do resultado da função ser =DATA(2008;13;01) e 13 ser um mês inválida, a função resolve elegantemente a situação retornando o seguinte resultado:

01/01/2009

Da mesma forma aconteceria com os dias, por exemplo, a função

=DATA(2008;12;32)

Retorna

01/01/2009

Valores negativos também são tratados da mesma forma, porém neste caso, atrasando a data informada.

Para auxiliar no uso desta função, recomenda-se as funções ANO(), MÊS() e DIA() para extrair os valores de uma data informada. Todas estas recebem uma data como parâmetro. Por exemplo, para que uma célula sempre mostre uma data que seja exatamente daqui a um mês, a fórmula é:

=DATA(ANO(HOJE());MÊS(HOJE())+1;DIA(HOJE()))

Bom proveito!

Comentários

comentários

6 comentários em “Excel – Somando Meses com a função DATA()”

  1. Creio que essa função é equivocada, pois não pega corretamente a variação de dias entre os meses (28/29 – fevereiro; 30 e 31 dos demais meses), ele simplesmente soma os meses, ignorando essa variação.

    Há algum método de aumentar a precisão, incluindo essa variação?

    Obrigado e parabéns pelo site.

  2. Prezado, parabés pela iniciativa.
    Estou com um problema aparentemente complicado.
    Necessito uma fórmula que some períodos que envolvam o dia 31.
    tentei dias360(), ela ignora o dia 31 no período
    tentei diatrabalhototal() ela descarta sabado e domingo não me serve.
    Tem alguma solução?
    Abraço forte!

Os comentários estão fechados.