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

Cycle hebdomadaire

  • Initiateur de la discussion Initiateur de la discussion Guy_L
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Guy_L

XLDnaute Occasionnel
Bonjour,
Le problème peut sembler assez simple, mais je bute sur le script à réaliser:

L'idée est de générer un calendrier annuel automatique (jusque là, je sais faire).
1) Il y a un onglet par mois baptisés du nom du mois.

2) Le premier jour du mois tombe sur la cellule B5. Les suivants étant incrémentés par
=DATE(ANNEE(B5);MOIS(B5);2) pour le deuxième jour puis =C5+1, D5=C5+1,...

3) Pour l'incrémentation par mois (par exemple février, j'ai mis =DATE(ANNEE(Janvier!$B$5);MOIS(Janvier!$B$5)+1;1)

4) Dans la ligne au dessus (ligne 4), j'affiche le jour sur trois lettre dont la première en majuscule par =NOMPROPRE(TEXTE(B5;"aaa"))

5) Dans la ligne encore au dessus (ligne 3), le n° de la semaine dans l'année par =CONCATENER(A43;" ";NO.SEMAINE(DATE(D3;1;1)))
(D3 étant une saisie manuelle de l'année souhaitée par l'utilisateur)

Tout cela fonctionne parfaitement et j'obtiens donc une grille mensuelle avec de haut en bas
- ligne 3 la semaine
- ligne 4 le jour de la semaine
- ligne 5 la date du jour (sans l'année)

C'est après que ça se "corse":

Dans la ligne 6 je veux afficher un "cycle" sur huit semaines du type 1/8 , 2/8 , 3/8, ... jusqu'à 8/8 puis recommencer à 1/8 ....
Sachant que, le 1er janvier primo, peut être n'importe quel jour de la semaine selon l'année et secundo a un cycle qui fait suite à l'année précédente et peut donc tout aussi bien être 1/8 que 5/8 ou même 8/8, il faut que les lundis qui suivent ce chiffre de cycle s'incrémentent seuls et ce, jusqu'à la fin de l'année.

j'avais d'abord tenté de le faire par calcul avec ceci:
=SI(C$5="";"";SI(JOURSEM(B$5;2)=7;SI(MAX($B$6:B$6)+1/8=8/8;REMPLACER(MAX($B$6:B$6)+1/8;1;3;"8/8");MAX($B$6:B$6)+1/8);""))

C'est très "barbare" et en plus je n'arrive pas à gérer le retour à 1/8 après le 8/8 car il "calcule" ça comme un nombre et traduit donc
4/8 par 0,5 et 8/8 par 1 (c'est mathématique)

Voilà, j'espère avoir été clair dans mes explications.
La solution passe peut-être par calcul ou par macro, mais j'avoue que c'est un casse tête pour moi.

Merci d'avance pour votre aide.
 
Dernière édition:
Re : Cycle hebdomadaire

Merci, je ne sais pas si la fonction MOD peut s'appliquer dans mon cas, j'ai fait une copie écran de ce que je cherche à obtenir
Lien supprimé

J'ai testé ton fichier au-delà de 8 cycles, et le résultat dans la colonne B continue sur 9/8, 10/8 ... ce qui n'est pas souhaité (redémarrage sur 1/8).
 
Dernière édition:
Re : Cycle hebdomadaire

Bonjour,
Il y a de bonnes idées à prendre, mais j'avoue ne pas avoir tout compris (difficile de décortiquer sans explications).
La ligne 4 semble ne pas fonctionner (indication "Jjj").
Merci pour cette proposition.

Voici où j'en suis (le cycle fonctionne partiellement sur le mois de janvier et pose toujours le problème au delà de 7/8)
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
146
Réponses
6
Affichages
159
  • Question Question
Microsoft 365 planning 5*8
Réponses
19
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…