OVH Cloud OVH Cloud

Fonction NO.SEMAINE

15 réponses
Avatar
Jeanne JAMBOU
Bonjour à tous
Quelle est la règle pour le calcul du n° de semaine

En utilisant le fonction NO.SEMAINE pour la date d'aujourd'hui, le résultat
est 31 au lieu de 30

Comment faire pour avoir un résultat fiable

Merci de vos réponses

Jeanne

5 réponses

1 2
Avatar
Philippe Noss
J'ai corrigé aussi la formule ;-)

=SI(JOURSEM(DATE(ANNEE(E40);1;1);2)<5;NO.SEMAINE(E40;1);SI(NO.SEMAINE(E40 ;1)-1=0;53;NO.SEMAINE(E40;1)-1))

ou

=SI(JOURSEM(DATE(ANNEE(E40);1;1);2)<5;NO.SEMAINE(E40;2);SI(NO.SEMAINE(E40 ;2)-1=0;53;NO.SEMAINE(E40;2)-1))

selon que la semaine commence Lundi ou Dimanche

par contre

pour lun 31/12/2001
lun 30/12/2002
mar 31/12/2002
lun 29/12/2003
mar 30/12/2003
mer 31/12/2003
lun 31/12/2007

=1+ENT(MIN(MOD(E40-DATE(ANNEE(E40)+{-1;0;1};1;5)+JOURSEM(DATE(ANNEE(E40)+ {-1;0;1};1;3));734))/7)
me renvoie 1
dim 01/01/2006 52 au lieu de 53

A +
Philippe
Avatar
Daniel.M
Bonsoir Philippe,

par contre

pour lun 31/12/2001
lun 30/12/2002
mar 31/12/2002
lun 29/12/2003
mar 30/12/2003
mer 31/12/2003
lun 31/12/2007

=1+ENT(MIN(MOD(E40-DATE(ANNEE(E40)+{-1;0;1};1;5)+JOURSEM(DATE(ANNEE(E40)+{->1;0
;1};1;3));734))/7)

me renvoie 1


Et c'est bien le résultat attendu dans tous ces cas. Tous ces jours sont dans la
même semaine que le 4 janvier de l'an suivant (donc 1ère semaine de l'an
suivant).

dim 01/01/2006 52 au lieu de 53


Le dimanche 1 janvier 2006 est bel et bien dans la 52e semaine de 2005.

AMA, tu n'as pas bien compris la norme ISO européenne (qui chevauche les années,
a-contrario de la norme US).
La première semaine de l'année est celle qui contient le 4 janvier ET DE PLUS,
les semaines commencent TOUJOURS un lundi (important, c'est dans la norme) et
ont toujours 7 jours (alors que les semaines norme-US peuvent avoir moins de 7
jours).

Salutations,

Daniel M.

Avatar
Philippe Noss
C'est pas que je n'ai comris la règle ISO européenne, c'est que je ne
la connais mais je ne l'ai pas cherchée. Si tu connais un site qui la
précise je suis preneur
Ceci dit, je n'ai rien contre la formule "1+ENT", si ce n'est qu'il
faut traduire en formule un algorythme que je ne connais pas plus que
la norme ISO !!!
A mon retour de congés, je vais me pencher sur le problème en
essayant (j'insisite lourdement !!) avec NO.SEMAINE , sinon avec une
fonction personnalisée qui calcule se n° de semaine selon
l'algorythme ( à moins qu'elle n'existe)
La suite dans 3 semaines, la j'ai déja la tete ailleurs ...

A bientot
Avatar
Modeste
Philippe Noss wrote:
Si tu connais un site qui la précise je suis preneur
;o)))

http://support.microsoft.com/default.aspx?scid=kb;FR;q200299

;o))) formules résumées par AV le 22-06 11:41

Formule non compatible calendrier 1904 :
=ENT(MOD(ENT((A1-2)/7)+0.6;52+5/28))+1

Compatible 1900 et 1904 (Daniel M.) :
=1+ENT(MIN(MOD(A1-DATE(ANNEE(A1)+{-1;0;1};1;5)+JOURSEM(DATE(ANNEE(A1)+{-1;0;1};1;3));734))/7)

--
n'oubliez pas les FAQ :
http://www.excelabo.net http://dj.joss.free.fr/faq.htm
http://www.faqoe.com http://faqword.free.fr
--
Feed Back
http://viadresse.com/?94912042

Avatar
Misange
Bonjour,

Si tu veux réinventer la roue...
Ca fait lurette que Laurent et d'autres se sont penché sur le pb et ont
pondu formules et fonctions adéquates, avec moultes explications
détaillées à l'appui que tu retrouvereras ici
http://www.excelabo.net/xl/calendriers.php#numerosemaine

Bonnes vacances !

Misange migrateuse http://www.excelabo.net
mail : http://cerbermail.com/?k5Q8Dh2mta

Le 29/07/2005 14:51, :
C'est pas que je n'ai comris la règle ISO européenne, c'est que je ne
la connais mais je ne l'ai pas cherchée. Si tu connais un site qui la
précise je suis preneur
Ceci dit, je n'ai rien contre la formule "1+ENT", si ce n'est qu'il
faut traduire en formule un algorythme que je ne connais pas plus que
la norme ISO !!!
A mon retour de congés, je vais me pencher sur le problème en
essayant (j'insisite lourdement !!) avec NO.SEMAINE , sinon avec une
fonction personnalisée qui calcule se n° de semaine selon
l'algorythme ( à moins qu'elle n'existe)
La suite dans 3 semaines, la j'ai déja la tete ailleurs ...

A bientot



1 2