Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Pb NO.SEMAINE

J

JEYBY

Guest
Bonsoir à tous,

J'ai une question : Excel me donne (à la date du 19/07/05 la semaine N°30). Hors sur les calendriers, j'ai pu constater que cette semaine était la N°29. Je suppose qu'il y a une explication logique à cet écart et je souhaiterai la connaitre.

Merci et bonne soirée.

JEYBY
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Oui c'est un problème de différence entre le calcul des semaines US et européenne

Fais un tour dans les archives et tu vas trouver des formules qui te font cela très bien pour la france

Bon courage
 
J

JEYBY

Guest
Slt,

Merci pour la réponse, ça marche. Mais plus les versions avancent et plus c'est le bazard (je savais même pas qu'on ne calculait pas pareil chez eux et et chez nous).

Merci, bonsoir


JEYBY
 

Gael

XLDnaute Barbatruc
Bonjour Jeyby, bonjour Pascal,

Une info complète sur le forum Excelabo:

Pour rappel, NO.SEMAINE (formule excel qui requiert que l'utilitaire d'analyse soit
chargé)
renvoie le numéro de semaine selon la norme américaine : la semaine 1 est celle qui inclut

le 1er janvier. Si vous êtes à l'ouest de la grande bleue, cette fonction est donc pour
vous.
Alors que pour la norme européenne, la semaine 1 est la première semaine qui comporte au
moins 4 jours dans l'année : il faut que le 1er janvier soit au plus tard un jeudi
pour qu'il soit en semaine 1.
Certaines années les semaines 1 des deux normes ne sont donc pas les mêmes
(par ex en 2000, le 1er janvier était, selon la norme européenne, en semaine 52 de
l'année 1999...)
LA formule classique et incontournable de Laurent Longre pour obtenir à partir d'une date
le numéro de semaine à la norme *européenne* (la date étant en A1) :

=ENT((A1-SOMME(MOD(DATE(ANNEE(A1-MOD(A1-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)

Requiert le calendrier 1900. Du même, une formule valable pour les calendriers 1900 et
1904 :

=ENT((A1-(DATE(ANNEE(A1-JOURSEM(A1-1)+4);1;3)-JOURSEM(DATE(ANNEE(A1-JOURSEM(A1-1)+4);1;3))
+5)/7)

Et une amélioration de cette fonction, patentée Christophe PEJOUT:
=ENT(MOD(ENT((A1-2)/7)+0,6;52+5/28))+1

Elle est basée sur la régularité du calendrier, qui redevient identique tous les 28 ans
;
elle n'est donc plus valable après 2100, qui ne sera pas bissextile
(après le 28 décembre 2104 exactement) : Microsoft a 100 ans pour s'adapter à l'Europe !

Tu peux aussi télécharger la macro complémentaire MOREFUN qui comporte une fonction NUM.SEMAINE avec un calcul conforme à la norme ISO.

Adresse du téléchargement : Ce lien n'existe plus
nom de la macro: morefun.xll

@+

Gael
 

Gael

XLDnaute Barbatruc
Rebonjour,

dernier point que j'ai oublié, si tu es intéressé par le détail de la formule, Laurent Longre a joint une explication sur plusieurs pages à consulter à l'adresse suivante:

Ce lien n'existe plus

@+

Gael
 

jlppap

XLDnaute Junior
Bonjour,

Il vaut mieux tard que jamais...

Je viens de voir le sujet... vous pouvez saisir cette formule dans la case où le n° de semaine va s'inscrire.

=ENT(MOD(ENT((B4-2)/7)+0,6;52+5/28))+1

cela fonctionne très bien.

bon courage et bon week end.
 

Discussions similaires

Réponses
2
Affichages
540
Réponses
17
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…