Resultados inconsistentes do número da semana do Excel


18

Estou usando uma planilha que inclui o número da semana para uma data específica. Após algumas pesquisas, encontrei uma função ISOWEEKNUM () que eu poderia aplicar a uma coluna de datas e isso parecia funcionar bem. Um trecho desta planilha é mostrado no link abaixo:

trecho da planilha

No entanto, notei que a função parece quebrar em 2018 quando mostra o número da semana em 31/12/2018 como semana 1, quando sempre aparece como semana 52 ou semana 53 nos anos anteriores (o que faz sentido para mim) .

Não há outros parâmetros além da data dessa função, portanto parece bastante direto. Alguma idéia de como fazer isso funcionar?


4
A contagem de semana como parte do ano, a maioria dos que semana é no.
CodesInChaos

Respostas:


33

Não há nada de errado com sua fórmula, mas talvez não seja a fórmula que você deseja usar. Há outra fórmula do Excel:

=WEEKNUM(serial_num, [return_type])

Isso retornará os resultados que você espera obter. No entanto, você deve primeiro verificar qual tipo de número de semana é mais apropriado para seu aplicativo.

Deixe-me explicar mais:

A função ISOWEEKNUM (data) funciona com base no fato de que uma semana sempre começa na segunda-feira e termina no domingo e, em seguida, define o padrão de que a primeira semana do ano é aquela semana que contém a primeira quinta-feira do ano na semana. Isso significa que os últimos dias do ano anterior podem ser rotulados como semana 1 do próximo ano.

A função WEEKNUM (date, start_day) começa a contar com a semana que contém 1 de janeiro. Portanto, 01 de janeiro é o primeiro dia da semana 1. Por padrão, novas semanas começam no domingo, então a semana 2 começa no primeiro domingo após 01 de janeiro. Você pode alterar o dia de início usando o segundo parâmetro na função. Em outras palavras, a primeira semana pode ter 1 dia, se 01 de janeiro for um sábado e o dia inicial padrão for usado. <- esse é o principal entendimento por trás da função WEEKNUM ().

Criei uma pequena planilha que contém seus valores de data e adiciona mais algumas para demonstrar a diferença:

insira a descrição da imagem aqui

Observe que não é apenas em 2018 que o último dia do ano é na primeira semana do próximo ano. A função ISOWEEKNUM () está funcionando bem, apenas tem uma interpretação diferente de quando a primeira semana começa.

Outra maneira de ver isso é observar as 2 funções ao longo de um período do dia que se estende desde o primeiro de janeiro:

insira a descrição da imagem aqui

Em 2015, o primeiro de janeiro é uma quinta-feira. A função semana ISOWEEKNUM () inclui, portanto, os últimos 3 dias em dezembro, enquanto a função WEEKNUM () inicia a semana no primeiro de janeiro, mas haverá apenas 3 dias na primeira semana para o dia padrão de início do domingo.

Espero que isso explique a diferença.


11
Obrigado a ambos por seus comentários. Ambas as respostas ajudaram a entender por que a resposta recebida estava correta. Na verdade, eu precisava do número da semana () para minha planilha e, portanto, escolhi @Clinton como a resposta aceita. Isso me deu uma compreensão clara da diferença nas funções.
WPDavid

17

A função parece quebrar em 2018 quando mostra o número da semana em 31/12/2018 como semana 1

Está correto, pois 31 de dezembro de 2018 é segunda-feira.

Se 31 de dezembro for segunda, terça ou quarta-feira, será na semana 01 do próximo ano. Se for em uma quinta-feira, está na semana 53 do ano acabando; se na sexta-feira for na semana 52 (ou 53 se o ano que termina) for um ano bissexto); se em um sábado ou domingo, está na semana 52 do ano acabando.

Data ISO da semana da fonte - Wikipedia


Culpe Shanghai, eu digo.
Raystafarian
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.