Incrémenter tous les 3 jours

Résolu

Bonjour, je desire incrémenter dans un calendrier "tous les 3 jours"

Par exemple:

mardi->puis se répète tous les 3 jours

vendredi->puis se répète tous les 3 jours

lundi->puis se répète tous les 3 jours

jeudi->puis se répète tous les 3 jours

dimanche->puis se répète tous les 3 jours

mercredi->puis se répète tous les 3 jours

samedi->puis se répète tous les 3 jours

mercredi->puis se répète tous les 3 jours

mardi -> l'on recommence

Si possible avec une seul formule.(au lieu de trois)

Merci pour l'idée de génie.

9 réponses

Résumé de la discussion

Le but est de générer, avec une seule formule, un calendrier qui se répète tous les 3 jours à partir d’une date de départ. Une solution courante propose de placer la date de départ en A1 et d’utiliser en A2 la formule =SI(MOD(AUJOURDHUI()-A1;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-A1;3)+3) pour faire avancer le cycle selon le décalage tri-quotidien. Pour corriger le décalage avec le jour exact de la tâche, des variantes visent à arrondir la date au prochain jour de tâche lorsqu’aujourd’hui n’en est pas un, et certaines discussions évoquent l’activation du calcul itératif afin d’éviter les boucles circulaires. Des échanges supplémentaires comparent l’affichage du jour de la tâche et l’alignement du cycle à d’autres schémas (par exemple tous les 15 jours à un samedi) afin de tester le comportement et la robustesse du modèle.

Bobot (l’IA à votre service)
  1. Modérateur

    Bonjour,

    Il serait préférable d'avoir un fichier exemple pour bien comprendre la problématique. Car au départ, sur une date, on rajoute 3 jours en simplement faisant +3


    0
    1. Bonjour jee pee,

      j'ai fait aujourd'hui+3

      mais demain, il me le répète.

      ce que je désire , c'est partir d'une date et ajouter 3 jours tous les 3 jours 

      0
      1. Modérateur

        Ne pas utiliser aujourd'hui(). En A1, mettre une date, 09/12/2024, en A2 mettre =A1+3 et dupliquer la formule de A2 à An

        0
    2. Bonjour,

      En attendant le fichier demandé par jee pee (salutations)

      la date de départ de A1 ; et comme dit plus haut pas la formule AUJOURDHUI() mais la date écrite ou entrée par Ctrl+; au format date longue

      en A2 une seule formule à incrémenter

      =A1+CHOISIR(JOURSEM(A1;2);3;3;3;3;3;3;3)

      Cordialement

      0
      1. Bonjour PapyLuc51,

        oui c'est bien cette incrémentation que je cherche, mais , si possible pas avec 7 lignes.
        Mais une seule formule qui incrémente tous les 3 jours (même éphémère) me semble pas possible!

        je n'ai pas besoins de la liste complète de tout le mois, seulement à partir d'un jour, 3 jours après, puis se répétera le jour suivant 

        donc Aujourd'hui  = jeudi

        jeudi se sera = dimanche  

        et dimanche se sera = mercredi

        ainsi de suite...

        0
      2. Modérateur
        @jmst1

        En A1 tu mets une date de départ, 09/12/2024 et en A2 la formule

        =SI(MOD(AUJOURDHUI()-A1;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-A1;3)+3)

        à tester en détail

        0
    3. re/--

      Je crois comprendre que lorsque tu inscris une date dans une cellule ça doit afficher le troisième jour qui suit lorsque tu valides par Enter.

      Si c'est ça, on part sur une macro et je te laisse aux bons soins des pros du VBA et une copie anonymisée de ton fichier sera utile.

      Me trompe-je ?

      Cordialement

      0
      1. Merci PapyLuc51, le VBA ne m'attire pas..

        tu dis: Je crois comprendre que lorsque tu inscris une date dans une cellule ça doit afficher le troisième jour qui suit lorsque tu valides par Enter.

        Presque: par exemple

        aujourd'hui je dois faire une tache.

        ok elle est faite.

        demain cette tache doit être faite dans 2 jours

        Apres demain cette tache doit être faite dans 1 jours

        et après après demain cette tache doit être faite (aujourd'hui [ le cycle de 3 jours recommence])

        0
    4. Bonjour à tous,

      Un essai, ,la date d'aujourd'hui en B3 :

      =A3+MOD(LIGNE(A4);2)+1

      à recopier vers le bas

      Daniel


      0
      1. Autre question : que se passe-t-il si tu as un retard dans l'exécution de la tâche ?

        Dans l'attente l'exemplaire de ton fichier pour travailler dessus.

        Cordialement

        0
        1. PapyLuc 51 si elle n'est pas faite, ben, c'est privé de dessert..

          je n'ai pas d'exemple, c'est intégré dans un calendrier où un libellé s'affiche  si la date est égale à "aujourd'hui" ou demain ou après-demain.

          C'est par exemple la 1ere semaine du mois tous les mardi , vendredi,  lundi

          puis jeudi , dimanche, mercredi,

          puis samedi , mardi, vendredi 

          puis lundi , jeudi , dimanche,

          puis mercredi, samedi ,mardi 

          puis vendredi, lundi , jeudi, etc. 

          Si c'etait tous les lundi puis tous les jeudi en 2 lignes c'est réglé.

          mais la, c'est tous les 3 jours, (et pas 3 jours puis 4 jours puis 3j ours ) donc les jours semaines tournent, d'où la difficulté..

          0
      2. Sur les indications de PapyLuc51 :

        En A2, ,à recopier vers le bas :

        =A1+MOD(LIGNE(A3);2)+1

        Daniel


        0
        1. Il me semble que la solution est celle-ci

          jee pee 9 450 > jmst1
          9 déc. 2024 à 12:02

          En A1 tu mets une date de départ, 09/12/2024 et en A2 la formule

          =SI(MOD(AUJOURDHUI()-A1;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-A1;3)+3)

          à tester en détail

          une simulation me donne bien la progression que je désire.

          la cellule est éphémère jusqu'au 3 jours suivant.

          je teste et je reviens vers vous   

          0
        2. @jmst1

          Merci jee pee.

          la formule fonctionne sauf quel ne répète pas le jour de la tache.

          Donc il faut: si la date n'est pas un "jour de la tache" arrondir la date au "jour de la tache+3jours suivant" sinon reprendre la date

          Formule un peu longue et pas facile à écrire si l'on ne remplace pas les "AUJOURDHUI()" par un No de cellule ainsi que la date de départ (45639) 

          =SI(SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3)=AUJOURDHUI()+3;AUJOURDHUI();SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3))

          Merci à vous tous.

          0
      3. Une autre idée en activant le calcul itératif dans les options de formules

        https://www.transfernow.net/dl/2024120960AYz57R

        Cordialement

        ps je n'avais pas mis le bon fichier au départ

        0
        1. Merci Papy Luc , mais il y a une référence circulaire dans le fichier !

          0
        2. @jmst1

          C'est bien pour cela que pour cette formule il faut activer le calcul itératif dans les options de formules.

          Voir l'image insérée dans le fichier envoyé.

          Cordialement 

          0
        3. @PapyLuc51

          oui, mais deux défauts

          Plusieurs lignes.

           et répondre oui qui ne me serre pas.

          Juste une date, qui se répète tous les 3 jours.

          Le jour de départ est un plus, mais pas franchement utile.

          Sur 3 jours la tache peu démarrer un Lundi au lieu de Mardi (je m'adapte)

          0
      4. Salut jmst1

        Pour arriver à une conclusion qui te satisfasse pleinement, il va falloir que tu fournisses un exemple de ton tableau avec toutes les explications utiles point par point, chose qu'on te demande depuis le début.

        Mon post est le 19e de cette discussion et je ne suis pas plus avancé qu'au début.

        Cordialement

        Bonnes fêtes de fin d'année à tous.

        0
        1. Il n'y a pas besoin d'un tableau, l'explication est claire:

          .

          Je desire une formule qui d'un départ donné, rappel une DATE pour une tache tous les 3jours, si possible pas de VBA ni sur plusieurs cellule.

          .

          La formule trouvée par jee pee fonctionne sauf que le jour(DATE) de la tache n'est pas affiché, mais donne 3 jours plus tard.

          .

          Donc un "si" de plus donne une formule un peu longue mais fonctionnelle  

          Merci jee pee.

          .

          La formule fonctionne sauf quelle ne répète pas le jour de la tache.

          .

          Donc il faut: si la date n'est pas un "jour de la tache" arrondir la date au "jour de la tache+3jours suivant" sinon reprendre la date.

          .

          Formule un peu longue et pas facile à écrire si l'on ne remplace pas les "AUJOURDHUI()" par un No de cellule ainsi que la date de départ (45639) 

          .

          =SI(SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3)=AUJOURDHUI()+3;AUJOURDHUI();SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3))

          Merci à vous tous.

          0
        2. @jmst1

          Bonjour,

          Après avoir lu et relu le sujet

          J'ai vérifié cette formule qui fonctionne dans l'ensemble.

          .

          J'ai toutefois remarqué que :

          .

          Si le jour de départ est le même qu'AUJOURDHUI() alors c'est la date du jour qui s'inscrit et si j'ai bien compris tu veux voir le départ + 3 jours.

          .

          En maintenant ta formule ça donne

          .

          Départ le 18-12 (date de tâche = 18-12), demain la (date de tâche sera le 21-12), après-demain la (tâche au 21-12)  et arrivé au 21-12 la (tâche sera aussi au 21-12).

          .

          Je pense que (et si j'ai bien compris) que ça devrait être :

          .

          Départ le 18-12 (date de tâche = 21-12), demain la (date de tâche sera le 21-12), après-demain la (tâche au 21-12)  et arrivé au 21-12 ça passera la (tâche à la date suivante soit le 24-12).

          .

          D'autre part si tu inscris une date de départ supérieure à AUJOURDHUI() la cellule tâche sera  AUJOURDHUI()+3 ; elle devrait rester vide ou marquer "hors période" par exemple.

          .

          Il ne faut pas rectifier grand chose sur ta formule 

          .

          =SI(45639>AUJOURDHUI();"Hors période";SI(SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+6;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3)=AUJOURDHUI()+3;AUJOURDHUI();SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3)))

          .

          Un fichier de comparaison en espérant être dans le vrai

          .

          https://www.cjoint.com/c/NLsp2eXmDLz

          .

          Cordialement

          0
        3. @PapyLuc51

          Merci PapyLuc51, ta formule fonctionne comme celle de jee pee, avec un pt plus "hors période" qui ne me serre pas.

          .

          Donc c'est la même formule que j'ai modifiée qui contient 248 caractères.

          .

          =SI(SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3)=AUJOURDHUI()+3;AUJOURDHUI();SI(MOD(AUJOURDHUI()-45639;3)=0;AUJOURDHUI()+3;AUJOURDHUI()-MOD(AUJOURDHUI()-45639;3)+3))

          .

          Il suffit de changer la date de départ (VE = 45639) pour choisir le démarrage de la tache LU, MA,ME JE,VE SA, ou DI

          0
        4. @jmst1

          Bonjour,

          .

          Si la formule te convient comme ça (j'en ai vu des plus longues) et que tout est OK pour toi, alors passe le "sujet en résolu".

          .

          Bonnes fêtes

          .

          Cordialement

          0
        5. @PapyLuc51

          Je vous remercie pour votre aide.

          0