J'utilise un tableur qui comprend le numéro de semaine pour une date donnée. Après quelques recherches, j'ai trouvé une fonction ISOWEEKNUM () que je pouvais appliquer à une colonne de dates et qui semblait bien fonctionner. Un extrait de cette feuille de calcul est présenté dans le lien ci-dessous:
Cependant, j'ai remarqué que la fonction semblait se désagréger en 2018 lorsqu'elle affichait le numéro de la semaine du 31/12/2018 comme étant la semaine 1, alors qu'elle apparaissait toujours sous les semaines 52 ou 53 les années précédentes (ce qui me semble logique). .
Il n'y a pas d'autre paramètre que la date pour cette fonction, donc cela semble assez simple. Avez-vous des idées pour que cela fonctionne?
Il n'y a rien de mal avec votre formule, mais peut-être que ce n'est pas la formule que vous souhaitez utiliser. Il existe une autre formule Excel:
=WEEKNUM(serial_num, [return_type])
Cela retournera les résultats que vous espérez obtenir. Cependant, vous devez d’abord vérifier quel type de numéro de semaine correspond le mieux à votre application.
Me laisser expliquer plus loin:
La fonction ISOWEEKNUM (date) fonctionne sur le principe qu'une semaine commence toujours un lundi et se termine un dimanche, puis définit comme standard la première semaine de l'année qui contient le premier jeudi de l'année dans la semaine. Cela signifie que les derniers jours de l'année précédente peuvent être considérés comme la semaine 1 de l'année suivante.
La fonction WEEKNUM (date, start_day) commence à compter la semaine contenant le 1er janvier. Le 01 janvier est donc le premier jour de la semaine 1. Par défaut, les nouvelles semaines commencent le dimanche, de sorte que la semaine 2 commence le premier. Dimanche après le 01 janvier. Vous pouvez changer le jour de départ en utilisant le deuxième paramètre de la fonction. En d’autres termes, la première semaine peut contenir un jour si le 01 janvier est un samedi et que le jour de début par défaut est utilisé. <- c'est la compréhension clé de la fonction WEEKNUM ().
J'ai créé une petite feuille de calcul contenant vos valeurs de date et en ajoutant quelques-unes pour montrer la différence:
Notez que ce n’est pas seulement en 2018 que le dernier jour de l’année est la première semaine de l’année suivante. La fonction ISOWEEKNUM () fonctionne bien, elle interprète simplement différemment le début de la première semaine.
Une autre façon de voir cela consiste à examiner les 2 fonctions sur une journée chevauchant le premier janvier:
En 2015, le premier janvier est un jeudi. La fonction semaine ISOWEEKNUM () inclut donc les 3 derniers jours de décembre, tandis que la fonction WEEKNUM () commence la semaine le premier janvier, mais il ne restera que 3 jours dans la première semaine pour le jour de départ par défaut du dimanche.
J'espère que cela explique la différence.
C'est exact, car le 31 décembre 2018 est un lundi.
Si le 31 décembre est un lundi, mardi ou mercredi, c'est à la semaine 01 de l'année suivante. Si c'est un jeudi, c'est à la semaine 53 de l'année qui se termine; si c'est un vendredi, c'est à la semaine 52 (ou à 53 si l'année qui se termine est une année bissextile); si c'est un samedi ou un dimanche, c'est à la semaine 52 de l'année qui se termine.