Numéro de semaine Excel, Attention aux erreurs

Numéro de semaine Excel, Attention aux erreurs
Dernière mise à jour le 05/02/2024
Temps de lecture : 2 minutes

Dans Excel il y a la 2 fonctions pour retourner le numéro de semaine à partir d'une date.

  1. La fonction NO.SEMAINE

    Cette fonction existe depuis l'origine d'Excel, mais elle utilise la méthode américaine, ce qui peut introduire des erreurs d'interprétation.

  2. La fonction NO.SEMAINE.ISO

    Cette fonction existe depuis Excel 2013 et retourne le numéro de semaine tel qu'il est déterminé en Europe

Règle différente entre les Etats-Unis et l'Europe

En Europe, le calcul des numéros de semaine est régie par la norme ISO 8601. Cette norme considère que la première semaine de l'année doit avoir au minimum 4 jours.

  • En d'autres termes, si la première semaine de l'année commence un vendredi, un samedi ou un dimanche, ces jours ne sont pas comptabilisés comme appartenant à la première semaine de l'année.
  • Mais pour l'Amérique du Nord, cette règle n'existe pas. Le calcul des numéros de semaine commence dès le 1er janvier, même si le 1er janvier est un dimanche.

Conséquence avec Excel

Pour bien comprendre l'impact de ces 2 formules sur le calcul des numéros de semaine, voici 2 tableaux avec la même date de départ.

Calcul avec le 1er Janvier

Dans le document suivant, nous avons toutes les dates du 1er Janvier de 2015 à 2025.

  • Avec la fonction NO.SEMAINE, quelques soit le premier jour de l'année, la fonction retourne toujours la valeur 1.
  • Avec NO.SEMAINE.ISO, si le premier jour de l'année est un vendredi, samedi ou dimanche, la fonction considère que la date du 1er Janvier appartient à la semaine de l'année précédente.
Calcul du numéro de semaine avec le 1er Janvier

Numéro de semaine avec le 3 Janvier

Dans le document suivant, nous avons maintenant toutes les dates du 3 Janvier de 2015 à 2025.

Calcul du numéro de semaine avec le 3 Janvier

Remarques

  • Le changement de semaine a lieu un dimanche avec la fonction NO.SEMAINE
  • Pour change de semaine un lundi, il faut ajouter la valeur 2 dans le deuxième paramètre de la fonctoin = NO.SEMAINE(date;2)
  • En 2016 et 2021, le 3 janvier n'est toujours pas comptabilisé par la fonction NO.SEMAINE.ISO. En effet, il n'y a pas encore eu de jours ouvrés à cette date pour ces années

Numéro de semaine en VBA

En VBA, pour retourner le numéro de semaine, le plus simple c'est de faire appel aux fonctions de calculs d'Excel.

Sub Num_Semaine()
    'Num semaine Format Europe
    Cells(1, 1) = Application.WorksheetFunction.IsoWeekNum(Date)
    'Num semaine Format US
    Cells(1, 1) = Application.WorksheetFunction.WeekNum(Date)
End Sub

Articles liés

2 Comments

  1. CHAUVEAU
    14/11/2023 @ 16:56

    Bonjour,

    Est-il possible dans Excel sans passer par le VBA de trouver le numéro de la semaine uniquement chaque lundi ?

    Reply

    • Frédéric LE GUEN
      15/11/2023 @ 08:19

      Bonjour, je ne comprends pas absolument pas la question. C'est un numéro de semaine que vous voulez ou trouver le lundi correspondant à un numéro de semaine précis ?

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Numéro de semaine Excel, Attention aux erreurs

Reading time: 2 minutes
Dernière mise à jour le 05/02/2024

Dans Excel il y a la 2 fonctions pour retourner le numéro de semaine à partir d'une date.

  1. La fonction NO.SEMAINE

    Cette fonction existe depuis l'origine d'Excel, mais elle utilise la méthode américaine, ce qui peut introduire des erreurs d'interprétation.

  2. La fonction NO.SEMAINE.ISO

    Cette fonction existe depuis Excel 2013 et retourne le numéro de semaine tel qu'il est déterminé en Europe

Règle différente entre les Etats-Unis et l'Europe

En Europe, le calcul des numéros de semaine est régie par la norme ISO 8601. Cette norme considère que la première semaine de l'année doit avoir au minimum 4 jours.

  • En d'autres termes, si la première semaine de l'année commence un vendredi, un samedi ou un dimanche, ces jours ne sont pas comptabilisés comme appartenant à la première semaine de l'année.
  • Mais pour l'Amérique du Nord, cette règle n'existe pas. Le calcul des numéros de semaine commence dès le 1er janvier, même si le 1er janvier est un dimanche.

Conséquence avec Excel

Pour bien comprendre l'impact de ces 2 formules sur le calcul des numéros de semaine, voici 2 tableaux avec la même date de départ.

Calcul avec le 1er Janvier

Dans le document suivant, nous avons toutes les dates du 1er Janvier de 2015 à 2025.

  • Avec la fonction NO.SEMAINE, quelques soit le premier jour de l'année, la fonction retourne toujours la valeur 1.
  • Avec NO.SEMAINE.ISO, si le premier jour de l'année est un vendredi, samedi ou dimanche, la fonction considère que la date du 1er Janvier appartient à la semaine de l'année précédente.
Calcul du numéro de semaine avec le 1er Janvier

Numéro de semaine avec le 3 Janvier

Dans le document suivant, nous avons maintenant toutes les dates du 3 Janvier de 2015 à 2025.

Calcul du numéro de semaine avec le 3 Janvier

Remarques

  • Le changement de semaine a lieu un dimanche avec la fonction NO.SEMAINE
  • Pour change de semaine un lundi, il faut ajouter la valeur 2 dans le deuxième paramètre de la fonctoin = NO.SEMAINE(date;2)
  • En 2016 et 2021, le 3 janvier n'est toujours pas comptabilisé par la fonction NO.SEMAINE.ISO. En effet, il n'y a pas encore eu de jours ouvrés à cette date pour ces années

Numéro de semaine en VBA

En VBA, pour retourner le numéro de semaine, le plus simple c'est de faire appel aux fonctions de calculs d'Excel.

Sub Num_Semaine()
    'Num semaine Format Europe
    Cells(1, 1) = Application.WorksheetFunction.IsoWeekNum(Date)
    'Num semaine Format US
    Cells(1, 1) = Application.WorksheetFunction.WeekNum(Date)
End Sub

Articles liés

2 Comments

  1. CHAUVEAU
    14/11/2023 @ 16:56

    Bonjour,

    Est-il possible dans Excel sans passer par le VBA de trouver le numéro de la semaine uniquement chaque lundi ?

    Reply

    • Frédéric LE GUEN
      15/11/2023 @ 08:19

      Bonjour, je ne comprends pas absolument pas la question. C'est un numéro de semaine que vous voulez ou trouver le lundi correspondant à un numéro de semaine précis ?

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.