Aqui está o que eu fiz. Ajuste as instruções conforme necessário para ajustar seu próprio modelo.
Instruções
- Defina A1 como o valor do ano do mês que você deseja representar.
- Para a data da primeira revisão deste post, seria "2015".
- Defina A2 como o nome completo do mês que você deseja representar.
- Para a data da primeira revisão deste post, seria "May".
- Preencha A3: G3 com os dias da semana, começando com "Domingo" em A3 e terminando com "Sábado" no G3.
- Coloque a seguinte fórmula em A4:
=IF(WEEKDAY(DATEVALUE(CONCATENATE($A$2," 1, ",$A$1)))=1,1,"")
- Dependendo do mês / ano, essa fórmula pode retornar um valor em branco aqui. (Será para maio de 2015.) Isso é normal.
- Coloque a seguinte fórmula em B4:
=IF(A4="",IF(WEEKDAY(DATEVALUE(CONCATENATE($A$2," 1, ",$A$1)))=COLUMNS($A$4:B4),1,""),A4+1)
- Dependendo do mês / ano, essa fórmula pode retornar um valor em branco aqui. (Será para maio de 2015.) Isso é normal.
- Copie a fórmula de B4 pelas células C4: G4. O Excel deve ajustar automaticamente as referências de célula na fórmula conforme necessário.
- Neste ponto, a fórmula deve ser avaliada como "1" em uma das células da linha 4, e cada célula depois deve retornar um incremento maior que a célula anterior. Células antes do "1" devem estar em branco. Para maio de 2015, você deve ver espaços em branco em A4: E4, "1" em F4 (sexta-feira) e "2" em G4 (sábado) .
- Coloque a seguinte fórmula em A5:
=IF(ISERROR(DATEVALUE(CONCATENATE($A$2," ",G4+1,", ",$A$1))),"",G4+1)
- O resultado da fórmula deve ser um superior ao valor de G4.
- Copie a fórmula em A5 nas células A6: A9. O Excel deve ajustar automaticamente as referências de célula na fórmula conforme necessário.
- A6: A9 será avaliado para espaços em branco por enquanto. Isso é normal.
- Coloque a seguinte fórmula em B5:
=IF(ISERROR(DATEVALUE(CONCATENATE($A$2," ",A5+1,", ",$A$1))),"",A5+1)
- O resultado da fórmula deve ser um valor maior que o valor de A5.
- Copie a fórmula em B5 pelas células C5: G5. O Excel deve ajustar automaticamente as referências de célula na fórmula, conforme necessário.
- As fórmulas na linha 5 agora devem ser avaliadas para um conjunto de números aumentando de forma incremental da coluna A para a coluna G.
- Selecione B5: G5 e copie essas células por B6: G9. O Excel deve ajustar automaticamente as referências de célula na fórmula, conforme necessário.
- Neste ponto, o calendário deve ser adequadamente preenchido para o mês especificado. As células antes do primeiro dia do mês e após o último dia do mês devem estar em branco.
- Para determinados meses, como janeiro de 2015, a linha 9 ficará totalmente em branco. Isso é normal.
Funções
- O CONCATENATE une as strings de texto.
- DATEVALUE retorna um valor "número de série" do Excel para a data representada por uma cadeia de texto. Ele retornará um erro se a string não corresponder a um formato de data conhecido ou se a string não representar uma data real (por exemplo, "32 de janeiro de 2015" ou "29 de fevereiro de 2015").
- WEEKDAY retorna um valor de 1 a 7, representando o dia da semana de uma determinada data.
- COLUMNS retorna o número de colunas abrangidas por uma matriz especificada de células.
- SE permite retornar um valor escolhido (ou resultado da fórmula) com base no fato de uma fórmula específica ser avaliada como VERDADEIRO ou FALSO.
- ISERROR retorna TRUE se a fórmula fornecida resultar em um erro ou FALSE se a fórmula não gerar um erro.
Explicações da fórmula
-
A4 reúne informações de A1 e A2 para gerar uma cadeia de texto que representa o primeiro dia do mês. (por exemplo: "1 de maio de 2015".) Em seguida, ele verifica se o dia da semana dessa data seria o domingo. Retorna 1 se for um domingo, em branco, se não.
-
B4: G4 verifique a célula anterior para ver se está em branco. Caso contrário, retorna um valor maior que a célula anterior. Se a célula anterior estiver em branco, verificará se o dia da semana atual corresponde ao primeiro dia do mês especificado - retorna 1 em caso afirmativo, em branco, se não.
-
A5: A9 adiciona 1 ao valor do final da linha precedente e, em seguida, combina o resultado com informações de A1 e A2 para formar uma cadeia de data. Verifica se a data realmente existe. Retorna o número do dia do mês, em caso afirmativo, em branco, se não.
-
B5: G9 adicione 1 ao valor da célula anterior e combine o resultado com as informações de A1 e A2 para formar uma string de data. Verifica se a data realmente existe. Retorna o número do dia do mês, em caso afirmativo, em branco, se não.
Screenshot
Exemplo de saída para maio de 2015.