Como adiciono 1 mês a uma data específica depois de essa data ser passada?

1

Eu tenho uma planilha de excel que lista nossa data de vencimento atual. As datas de vencimento são no mesmo dia de cada mês (9/2, 10/2, etc) e eu quero que a data de vencimento seja atualizada assim que a data antiga passar, então não preciso fazer isso manualmente ou ter uma coluna para cada mês. Tenho certeza de que existe uma fórmula para fazer isso, mas nada está funcionando.

A fórmula mostrada aqui é o que eu tenho agora e não sei por que isso não está dando certo - embora até isso eu pense que teremos problemas depois que a data de vencimento de dezembro passar. Alguma idéia?

Procurando por uma solução não VBA.

    
por J. Muller 27.09.2017 / 22:30

1 resposta

2

Você está com sorte, não é necessário usar o VBA. Na verdade, existe uma abordagem ainda mais simples que não exige um teste de FI:

=DATE(YEAR(NOW()),MONTH(NOW())+(DAY(NOW())>2),2)

Codifiquei o segundo dia do mês com base na pergunta, mas ele pode ser recuperado de uma célula ou extraído da data de vencimento original.

Em vez de testar se você passou o dia de destino do mês, isso usa o fato de que VERDADEIRO e FALSO são tratados como 1 e 0, respectivamente. (DAY(NOW())>2) será verdadeiro ou falso, por isso será tratado como 1 se você ultrapassar o segundo dia do mês ou 0 se você não tiver passado. Se você passou esse dia, ele adiciona 1 ao mês.

O Excel é inteligente o suficiente para lidar com o mês "13" se isso acontecer em dezembro. Vai para janeiro do próximo ano.

    
por 27.09.2017 / 23:07