Jour décalé

rakatamouche Messages postés 904 Date d'inscription   Statut Membre Dernière intervention   -  
brucine Messages postés 24311 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

J'ai un fichier avec la formule ci-dessous pour afficher la date. C'est pas moi qui l'ai faite. Le système: 4 colonnes, B C D E. En C on met le nombre de la semaine, en D le nombre du jour. En B, formule ="S"&C7&" J"&D7  En 2025 la semaine 10 commençait un lundi. Alors si on met en C et D : 2 et 1, ça donne en B: S10 J1 et en E: 3 Mars   J'essaie de l'adapter à l'année 2026 mais j'y arrive pas. On est samedi 9 mai, semaine 19. La semaine prochaine si je mettais 1 2 3 4 5 dans la colonne D ça donnerait pour jeudi et vendredi (jours 4 et 5): 14 Mai et 8 Mai. Je ne comprends pas. Merci d'avance

=SI(NBCAR(B7)<>6;"";7*C7+DATE(2025;1;1)+JOURSEM(DATE(2025;1;D7);2)-12)


Macintosh / Firefox 150.0


CCM est votre ami

A voir également:

1 réponse

brucine Messages postés 24311 Date d'inscription   Statut Membre Dernière intervention   4 080
 

Bonjour,

Le premier lundi de la semaine C7 est rendu par:

=7*C7 +DATE(2026;1;1)-JOURSEM(DATE(2026;1;1))-5

https://www.bonbache.fr/lister-toutes-les-semaines-d-une-annee-avec-excel-612.html

Si je veux la date correspondant au jour de semaine D7, je dois ajouter D7-1 donc en simplifiant:

=7*C7 +DATE(2026;1;1)-JOURSEM(DATE(2026;1;1))-6+D7

La formulation DATE me paraît lourde et doit être changée chaque année, pourquoi ne pas rajouter, je dis n'importe quoi, l'année en A1 et DATE(A1;1;1) en A2, il n'y a plus qu'à changer chaque année en A1 et remplacer dans la formule par DATE(A2).

La condition d'erreur n'est pas d'une logique folle, elle échouera dans les 9 premières semaines de l'année et si on oublie d'incrémenter semaine ou jour; on peut se prémunir de l'erreur VALEUR par SI(ESTNUM(C7;D7);formule;""

0
brucine Messages postés 24311 Date d'inscription   Statut Membre Dernière intervention   4 080
 

Lapsus, pas par DATE(A2), A2 tout court.
Si on veut faire d'une pierre deux coups et qu'on ne travaille que sur une année en même temps, par exemple =DATE(ANNEE(AUJOURDHUI());1;1)

0