Retorno Data Final do Mês - Dicas do Excel

Índice

Tony escreveu com uma pergunta que parece simples, mas requer uma fórmula bastante complicada:

Estou executando o Excel 97 e quero que algumas das células formatadas por data na coluna 'K' retornem uma data que é o final do mês quando eu insiro qualquer dia desse mês em 'G'. Tentei o EMONTH em uma versão anterior do Excel, mas não o fiz funcionar nesta versão.

Existem algumas maneiras de resolver muitos problemas no Excel. Tenho certeza de que alguém vai inventar algo mais simples, mas no momento, esta fórmula vem à mente:

=DATE(YEAR(E1),1+MONTH(E1),1)-1

A função DATE () geralmente aceita três argumentos: um ano, um mês e um dia. Portanto, 13 de dezembro de 2001 poderia ser inserido como =DATE(2001,12,13).

A função de data também é bastante indulgente. Se você especificar um número inválido de meses, como 13, ele fornecerá a data correta. =DATE(2001,13,1)será 1 de janeiro de 2002. Isso o torna uma ótima função quando você precisa adicionar ou subtrair a data atual.

Para resolver esse problema, é mais fácil encontrar o primeiro dia do mês seguinte e depois subtrair um dia. Isso é mais fácil, porque sabemos que a parte do dia do primeiro dia do próximo mês é sempre 1. Considerando que, se você tentasse encontrar o último dia deste mês, teria que verificar se há anos bissextos, etc - geralmente seria um bagunça.

Se você tiver uma data em E1, YEAR (E1) retornará a parte do ano da data. Mês (E1) +1 retornará a parte do mês da data e avançará para o mês seguinte. O argumento final, o 1 selecionará o primeiro dia do próximo mês. Então, finalmente, subtraio um dessa data para converter 01/01/2002 para 31/12/2001.

Atualizar

Agradecimentos a Steve H. por esta resposta pronta para usar. É incomum considerar o "dia 0" de um mês, mas funciona!

=DATE(YEAR(E1),1+MONTH(E1),0)

Artigos interessantes...