La fonction NO.SEMAINE.ISO (ISOWEEKNUM en anglais) retourne le numéro de semaine d'une date selon la norme internationale ISO 8601. Cette norme garantit une numérotation cohérente des semaines : la semaine commence toujours le lundi, et la semaine 1 est celle qui contient le premier jeudi de l'année.
NO.SEMAINE.ISO est indispensable pour les plannings projet, les suivis de production, les analyses de ventes hebdomadaires et tout reporting international. Elle n'a qu'un seul paramètre, ce qui la rend plus simple et moins sujette aux erreurs que NO.SEMAINE avec le paramètre type 21.
Syntaxe de la fonction NO.SEMAINE.ISO
=NO.SEMAINE.ISO(numéro_de_série)NO.SEMAINE.ISO est disponible depuis Excel 2013. Sur des versions antérieures, utilise =NO.SEMAINE(date; 21) qui produit exactement le même résultat. Les premières et dernières dates de l'année peuvent appartenir à la semaine 52 ou 53 de l'année précédente, ou à la semaine 1 de l'année suivante.
Comprendre chaque paramètre de la fonction NO.SEMAINE.ISO
numéro_de_série
: la date dont tu veux obtenir le numéro de semaine ISOCe paramètre accepte plusieurs formats : une référence de cellule contenant une date (A2), une fonction DATE (DATE(2024;3;15)), la fonction AUJOURDHUI pour la date actuelle (AUJOURDHUI()), ou un texte converti avec DATEVAL (DATEVAL("15/03/2024")).
Excel stocke les dates comme des nombres (le nombre de jours depuis le 1er janvier 1900). Si ta cellule contient du texte qui ressemble à une date, la fonction retournera une erreur #VALEUR!. Utilise DATEVAL pour convertir le texte en date.
Astuce : Pour des formules robustes face aux cellules vides ou aux erreurs, protège-les avec : =SI(ESTVIDE(A2); ""; NO.SEMAINE.ISO(A2)). Cela affiche une cellule vide au lieu d'une erreur quand la date est absente.
Attention : Les dates en début janvier et fin décembre peuvent appartenir à une autre année ISO. Le 1er janvier 2023 était semaine 52 de 2022. Si tu construis des totaux annuels, vérifie l'année ISO avec : =SI(ET(MOIS(A2)=1; NO.SEMAINE.ISO(A2)>50); ANNEE(A2)-1; ANNEE(A2)).
Pas envie d'écrire la formule NO.SEMAINE.ISO à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Chef de projet : planification par sprints hebdomadaires
Tu es chef de projet et tu structures ton planning par semaines ISO pour coordonner plusieurs équipes, y compris des partenaires internationaux. Les numéros de semaine ISO sont un référentiel universellement compris, essentiel dans les méthodologies agiles.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Tâche | Date livraison | Semaine ISO | Sprint |
| 2 | Design interface | 12/03/2024 | 11 | Sprint 11 |
| 3 | API backend | 19/03/2024 | 12 | Sprint 12 |
| 4 | Tests intégration | 26/03/2024 | 13 | Sprint 13 |
=NO.SEMAINE.ISO(B2)La fonction retourne directement le numéro de semaine de la date en B2 (semaine 11). L'identifiant de sprint en colonne D reprend simplement ce numéro précédé du mot « Sprint ». Ce référentiel commun facilite la synchronisation entre équipes sur différents fuseaux horaires.
Responsable production : suivi de production hebdomadaire
Tu es responsable production et tu dois consolider les performances de plusieurs sites de production à travers le monde. La norme ISO est le standard dans l'industrie manufacturière pour garantir que tous les sites utilisent la même référence temporelle dans leurs tableaux de bord KPI.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Date production | Quantité | Semaine ISO | Objectif atteint |
| 2 | 15/01/2024 | 450 unités | 3 | Oui |
| 3 | 22/01/2024 | 520 unités | 4 | Oui |
| 4 | 29/01/2024 | 380 unités | 5 | Non |
=NO.SEMAINE.ISO(A2)En colonne C, la fonction donne le numéro de semaine ISO de chaque date de production. Tu peux ensuite créer un tableau croisé dynamique par semaine ISO pour comparer les performances entre sites et périodes de manière cohérente.
Paie : regrouper les heures travaillées par période
Tu gères la paie pour des équipes dont les heures sont suivies à la semaine. Pour créer des identifiants de période de paie clairs et triables, tu combines le mois et le numéro de semaine ISO dans un code unique.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Date pointage | Heures | Semaine ISO | Période paie |
| 2 | 08/04/2024 | 8h | 15 | Avril-S15 |
| 3 | 09/04/2024 | 9h | 15 | Avril-S15 |
| 4 | 15/04/2024 | 8h | 16 | Avril-S16 |
=TEXTE(A2;"mmmm")&"-S"&NO.SEMAINE.ISO(A2)Ici, la formule combine le mois (en toutes lettres) et le numéro de semaine ISO pour générer un code de période comme « Avril-S15 ». Tu peux ensuite utiliser SOMME.SI sur cette colonne pour totaliser les heures par période de paie, pratique pour les équipes internationales où la semaine est la référence commune.
Responsable qualité : référence rapport réglementaire européen
Les réglementations européennes (pharmaceutique, finance, automobile) exigent souvent des rapports hebdomadaires selon la norme ISO 8601. Tu dois créer des références de rapport conformes aux standards internationaux pour les organismes comme l'ANSM, l'EMA ou l'ECHA.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Date incident | Type | Semaine ISO | Référence rapport |
| 2 | 06/05/2024 | Qualité | 19 | QR-2024-W19 |
| 3 | 13/05/2024 | Sécurité | 20 | SR-2024-W20 |
| 4 | 20/05/2024 | Environnement | 21 | ER-2024-W21 |
=GAUCHE(B2;1)&"R-"&ANNEE(A2)&"-W"&TEXTE(NO.SEMAINE.ISO(A2);"00")Ici, la formule génère automatiquement des identifiants au format année-semaine ISO requis. Le passage par TEXTE(NO.SEMAINE.ISO(A2);"00") force l'affichage sur 2 chiffres (W01 plutôt que W1), ce qui garantit un tri alphabétique correct de tes références.
Astuce de pro : Pour un tri alphabétique parfait, utilise toujours le format sur 2 chiffres avec TEXTE(NO.SEMAINE.ISO(date);"00"). Sans le zéro devant, W9 viendrait après W19 dans un tri alphabétique.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction NO.SEMAINE.ISO
Ce qui fait trébucher NO.SEMAINE.ISO, ce n'est presque jamais le calcul lui-même : c'est ce qu'on lui donne à manger. Le cas le plus fréquent est une date saisie comme texte (le fameux "15/03/2024" aligné à gauche dans la cellule), qui renvoie aussitôt un #VALEUR! parce qu'Excel n'y voit pas un vrai numéro de série.
Les deux autres pièges sont plus sournois car ils ne déclenchent pas d'erreur visible : un janvier qui bascule en semaine 52 de l'année d'avant, et le #NOM? sur Excel 2010 et antérieur où la fonction n'existe tout simplement pas.
Erreur #VALEUR! avec une date stockée en texte
NO.SEMAINE.ISO ne reconnaît pas les dates stockées au format texte. Si tu as "15/03/2024" saisi comme texte dans ta cellule, la fonction retournera une erreur #VALEUR! car Excel ne peut pas interpréter ce texte comme un numéro de série de date.
Solution : Utilise DATEVAL pour convertir le texte en date : =NO.SEMAINE.ISO(DATEVAL("15/03/2024")). Pour les cellules de ton tableau, vérifie que le format de cellule est bien "Date" et non "Texte". Le triangle vert dans le coin de la cellule signale souvent ce problème.
Confusion entre l'année civile et l'année ISO en janvier et décembre
Les premiers jours de janvier peuvent appartenir à la dernière semaine de l'année précédente. Par exemple, le 1er janvier 2023 était semaine 52 de 2022. Inversement, les derniers jours de décembre peuvent appartenir à la semaine 1 de l'année suivante.
Solution : Pour tes totaux annuels, crée une colonne "Année ISO" avec : =SI(ET(MOIS(A2)=1; NO.SEMAINE.ISO(A2)>50); ANNEE(A2)-1; ANNEE(A2)) pour janvier, et complète avec =SI(ET(MOIS(A2)=12; NO.SEMAINE.ISO(A2)=1); ANNEE(A2)+1; ANNEE(A2)) pour décembre.
Erreur #NOM? : fonction non disponible sur les anciennes versions
NO.SEMAINE.ISO n'existe que depuis Excel 2013. Si tu travailles avec Excel 2010 ou une version antérieure, Excel ne reconnaît pas cette fonction.
Solution : Utilise =NO.SEMAINE(date; 21) à la place, qui produit exactement le même résultat et fonctionne depuis Excel 2007. Le paramètre 21 indique à NO.SEMAINE d'utiliser la norme ISO 8601.
Erreur #VALEUR! ou #NUM! sur les cellules vides
Si ta cellule de référence est vide ou contient une valeur qui n'est pas une date valide, NO.SEMAINE.ISO retournera une erreur qui peut se propager dans toutes les formules qui en dépendent.
Solution : Protège ta formule avec SIERREUR : =SIERREUR(NO.SEMAINE.ISO(A2); "") pour afficher une cellule vide. Pour une validation plus robuste : =SI(OU(ESTVIDE(A2); NON(ESTNOMBRE(A2))); ""; NO.SEMAINE.ISO(A2)).
NO.SEMAINE.ISO vs NO.SEMAINE vs ANNEE vs MOIS
Prends NO.SEMAINE.ISO dès que ton reporting est hebdomadaire et qu'il croise des équipes ou des sites à l'international : la norme ISO 8601 est la seule sur laquelle tout le monde tombe d'accord, et son unique argument t'évite le piège du type mal réglé. Garde NO.SEMAINE uniquement si tu as besoin d'un autre système de numérotation que l'ISO, sinon NO.SEMAINE(date; 21) ne fait que recopier le résultat en plus verbeux.
ANNEE et MOIS jouent dans une autre cour : elles servent à agréger par année ou par mois, pas par semaine. C'est l'une ou l'autre selon la maille de ton total, pas une alternative à la semaine ISO.
| Critère | NO.SEMAINE.ISO | NO.SEMAINE | ANNEE | MOIS |
|---|---|---|---|---|
| Ce que ça retourne | Numéro semaine ISO (lundi comme 1er jour) | Numéro semaine (avec choix du système) | Année (1900-9999) | Mois (1-12) |
| Arguments | 1 seul (date) | 2 (date + type) | 1 seul (date) | 1 seul (date) |
| Norme internationale | Oui (ISO 8601) | Dépend du type choisi | Sans objet | Sans objet |
| Disponible depuis | Excel 2013 | Toutes versions | Toutes versions | Toutes versions |
| Cas d'usage typique | Reporting international, planning agile | Quand le système de semaine varie | Extraire l'année pour un total annuel | Extraire le mois pour un total mensuel |
Astuces avancées avec NO.SEMAINE.ISO
Créer un code semaine bien trié avec l'année incluse
Pour des codes semaine triables alphabétiquement et sans ambiguité entre années, adopte le format ANNEE-S## : =ANNEE(A2)&"-S"&TEXTE(NO.SEMAINE.ISO(A2);"00"). Le TEXTE(...;"00") force l'affichage sur 2 chiffres (S01, pas S1), ce qui garantit un tri alphabétique correct.
Sans le zéro devant, S9 apparaîtrait après S19 dans n'importe quel tableau croisé dynamique.
Totaliser les données de la semaine en cours automatiquement
Pour afficher en temps réel le total de la semaine actuelle, combine NO.SEMAINE.ISO avec SOMME.SI.ENS : =SOMME.SI.ENS(C:C; B:B; NO.SEMAINE.ISO(AUJOURDHUI())) où la colonne B contient les numéros de semaine précalculés. Cette formule se met à jour automatiquement chaque jour.
Ajoute une colonne de numéros de semaine ISO dès la création de ta table de données : c'est le meilleur investissement pour tes futures analyses.
Questions fréquentes sur la fonction NO.SEMAINE.ISO
Quelle est la différence entre NO.SEMAINE.ISO et NO.SEMAINE ?
NO.SEMAINE.ISO retourne uniquement le numéro de semaine selon la norme ISO 8601 (lundi comme premier jour, semaine 1 contenant le premier jeudi). C'est l'équivalent de NO.SEMAINE avec type_retour 21, mais en plus simple car elle n'a qu'un seul argument. Si tu veux toujours utiliser la norme ISO, NO.SEMAINE.ISO est plus rapide à écrire et évite les erreurs de paramétrage.
Qu'est-ce que la norme ISO 8601 pour les semaines ?
La norme ISO 8601 définit que la semaine commence toujours un lundi et que la semaine 1 est celle qui contient le premier jeudi de l'année (ou celle qui contient le 4 janvier). Cette norme garantit que chaque semaine a exactement 7 jours et appartient à une seule année. C'est la norme utilisée par la plupart des entreprises européennes pour leurs plannings et reportings.
Pourquoi une date de début janvier peut-elle avoir le numéro 52 ou 53 ?
Selon la norme ISO, si les premiers jours de janvier tombent avant le premier jeudi de l'année, ils appartiennent à la dernière semaine de l'année précédente. Par exemple, le 1er janvier 2023 était un dimanche et appartenait à la semaine 52 de 2022. Vérifie toujours l'année ISO si tu travailles avec des dates de début janvier pour tes totaux annuels.
NO.SEMAINE.ISO fonctionne-t-elle avec toutes les versions d'Excel ?
NO.SEMAINE.ISO est disponible depuis Excel 2013 et fonctionne aussi dans Excel 365, 2016, 2019 et 2021. Sur une version plus ancienne (Excel 2010 ou antérieure), utilise =NO.SEMAINE(date; 21) qui produit exactement le même résultat et fonctionne depuis Excel 2007.
Comment obtenir la date du premier jour d'une semaine ISO ?
Pour calculer le lundi d'une semaine ISO donnée, utilise : =DATE(année;1;4)-JOURSEM(DATE(année;1;4);3)+(numéro_semaine-1)*7. Cette formule calcule le lundi de la semaine ISO spécifiée. Pour une approche plus simple dans tes tableaux de bord, crée un tableau de référence avec les dates de début de chaque semaine que tu pourras consulter avec RECHERCHEV.
Pour aller plus loin
Les fonctions similaires : NO.SEMAINE, ANNEE, MOIS, JOUR, JOURSEM
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

