Formule : Numéro de semaine - Premier jour de la semaine

blord

XLDnaute Impliqué
Bonjour à tous,

J'essai d'utiliser la formule suivante pour calculer le numéro de la semaine :

=ENT(MOD(ENT((A5-2)/7)+0.6;52+5/28))+1

(Merci aux gens du forum...!)

Le problème que j'ai avec cette formule est qu'elle considère les lundis comme étant le premier jour de la semaine. J'aurais besoin de considérer le dimanche comme premier jour de la semaine.

Je ne peux utiliser la formule No.Semaine ou WEEKNUM parce que je n'ai pas le contrôle des macros complémentaires sur les postes de travail sur lesquels seront déployer mon application...


Merci de me revenir si vous avez une solution....

Benoit Lord
 

JCGL

XLDnaute Barbatruc
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonjour à tous,

Peux-tu essayer avec :
Code:
=ENT(MOD(ENT((A1-1)/7)+3/5;52+5/28))+1
J'ai remplacé le 0.6 ou 0,6 par 3/5 : compatibilité avec les deux séparateurs courants.

Astuce de Roger sur une formule de Monique

A+ à tous

Edition : Merci Claude
 
Dernière édition:

Claude38

XLDnaute Impliqué
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonsoir tous,

En lisant ton post dans la chaleur Grenobloise il me semble qu'il faut rajouter +1 à la fin de la formule sinon il va y avoir un décalage d'une semaine avec la norme ISO.La numérotation commençant à zéro.

Bonne soirée et bonne fraîcheur
 

JCGL

XLDnaute Barbatruc
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonjour à tous,
Salut Claude,

Effectivement, j'ai oublié le +1.
J'ai modifié le message et la formule.

Grosse chaleur sur Grenoble :), une petite pluie ferait du bien
A++

A+ à tous
 

ROGER2327

XLDnaute Barbatruc
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonsoir à tous
La question de blord n'est pas claire. S'il souhaite utiliser la norme ISO 8601, il doit considérer que :
  • premièrement, la semaine n°1 d'une année est la première semaine dont au moins quatre jours appartiennent à la dite année civile ;
  • deuxièmement, le premier jour de la semaine est le lundi.
Ces deux règles font que la semaine n°1 d'une année est la première semaine de l'année civile dont le jeudi appartient à la dite année civile.
_

S'il souhaite considérer le dimanche comme premier jour de la semaine, il ne respecte pas la deuxième règle de la norme ISO 8601. Il peut décider de créer sa propre norme en respectant seulement la première règle. Dans ce cas, le numéro d'une semaine donnée ne sera pas nécessairement celui de la norme ISO : en 2009 la première semaine selon la norme ISO est la semaine allant du lundi 29 décembre 2008 au dimanche 4 janvier 2009 inclus. Avec sa convention, la première semaine de 2009 est la semaine allant du dimanche 4 janvier 2009 au samedi 10 janvier inclus.
S'il ne respecte aucune règle internationale, il peut utiliser la curieuse norme locale d'une fédération d'une cinquantaine d'états américains pour lesquels la semaine est une unité fluctuante pouvant compter de un à sept jours selon les circonstances.
Pour l'anecdote, ce système vaut d'être décrit. En ces contrées, la première semaine de l'année commence le premier janvier : en 2009 cette semaine est une semaine de trois jours (si !) allant du jeudi premier janvier au samedi 3 janvier. La dernière semaine de la même année comptera cinq jours (si ! si !) allant du dimanche 27 décembre au jeudi 31 décembre. L'année 2009 comporte donc cinquante-trois semaines variables ainsi réparties : une semaine de trois jours, une semaine de cinq jours et cinquante-et-une semaine de sept jours.
On arrive parfois à des extravagances plus remarquables ; les années 1916, 1944, 1972, 2000, 2028, 2056, 2084 comportent chacune cinquante-quatre semaines : deux semaines d'un jour et cinquante-deux semaines de sept jours !
Il y a de quoi vouloir être payé à la semaine...
Enfin, si ni le système international, ni le système folklorique décrit ci-dessus ne lui conviennent, il faut qu'il en invente un autre.
Par conséquent, il faudrait que blord précisât sa question.
A suivre...​
ROGER2327
 
Dernière édition:

blord

XLDnaute Impliqué
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonjour JCGL, Claude38, Roger2327, le forum,

La formule proposée par JCGL & Claude38 me convient parfaitement. Je viens de faire des tests en comparant les résultats obtenus vec la formule NUMWEEK et le tout est satisfaisant pour mes besoins.

Également merci à Roger2327 pour les informations complémentaires...


Benoit Lord
 

ROGER2327

XLDnaute Barbatruc
Re : Formule : Numéro de semaine - Premier jour de la semaine

Bonjour à tous
Surpris que blord trouve les résultats la formule de JCGL/Claude38 identiques à ceux de la fonction NO.SEMAINE() ou WEEKNUM(), j'ai entrepris une vérification d'où il ressort que les résultats des deux formules sont généralement différents. En 2010 et 2011, ils ne sont même jamais concordants. Et c'est heureux, car la formule de JCGL/Claude38 est exacte et bâtie sur le principe de la norme ISO. La seule différence est que le premier jour de la semaine est le dimanche. Mais elle ne peut pas coïncider avec le système de nos amis de Nouvelle Angleterre : la formule de JCGL/Claude38 ne considère que des semaines de sept jours, jamais moins. Si l'on veut simuler la formule NO.SEMAINE(), il faut abandonner l'excellente formule de Monique et bâtir autre chose. Je propose
Code:
[COLOR="DarkSlateGray"]=ENT((A2-DATE(ANNEE(A2);1;-12)-MOD(A2-7*ENT(A2/7)-1;7))/7)[/COLOR]
qui utilise les fonctions DATE() & ANNEE() et
Code:
[COLOR="DarkSlateGray"]=ENT((A2-(SOMME(ENT((ANNEE(A2)-1)/{1;4;100;400})*{365;1;-1;1})-693606)-MOD(A2-7*ENT(A2/7)+6;7))/7)[/COLOR]
qui n'utilise pas la fonction DATE().
Le classeur joint montre les résultats des différentes formules en cause.​
ROGER2327
 

Pièces jointes

  • calendrier iso.zip
    16.3 KB · Affichages: 449
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16