Microsoft 365 Calcul de réccurence

  • Initiateur de la discussion Initiateur de la discussion sr94
  • 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 !

sr94

XLDnaute Occasionnel
Bonjour
J’aurai besoin d’un coup de main pour finaliser une formule.
Je souhaiterais créer des tâches récurrentes avec 4 possibilités :
Le 1er jour du mois
Tous les jours de la semaine
Mensuel
Hebdomadaire

Je pars d’une date de début, à partir de laquelle la réccurence est calculée. Certaines tâches sont sans réccurence.
Lorsque la tâche est effectuée, je passe Terminé Non en Oui et à partir de là il doit me recalculer une échéance puis remettre Terminé à « Non » au démarrage du fichier par macro.
Ci-joint ce que j’ai fait mais la macro et la formule date d’échéance ne marchent pas comme il faut.
Pouvez vous m’aider ?

Je suis ouverte à d'autres approches si quelqu'un a déjà fait un fichier de ce type.

Merci beaucoup
 

Pièces jointes

Bonjour.
Avec cette formule il calcule bien le 15/6
En Tableau1[Date d'échéance] :
Code:
=SI([@[Date de début]]<>"";CHOISIR(EQUIV([@[Task Recurrance]];{"Hebdomadaire";"Mensuel";"1er du mois";"Tous les jours de la semaine";""};0);[@[Date de début]]+7;MOIS.DECALER([@[Date de début]];1);DATE(ANNEE([@[Date de début]]);MOIS([@[Date de début]])+1;1);[@[Date de début]]+1);"")
 
super merci !
par contre si j'ai une échéance à aujourd'hui, que je mets Terminé en oui, et "tous les jours de la semaine" en réccurence il ne recalcule pas. Il faut attendre le jour suivant ? (il doit passer du vendredi au lundi pas au samedi). Egalement ça ne doit pas se calculer 1 seule fois mais de façon réccurente chaque jour, ou semaine etc ... la date de début est juste un point de départ.
 
Je n'ai as regardé la programmation, en attendant que ce problème soit réglé.
Après, je suppose qu'il faut quelque part une macro qui remplace toutes les Date de début dépassées et Terminé par la Date d'échéance.
 
Cette macro devrait faire le taf :
VB:
Sub NouvellesEchéances()
   Dim LOt As ListObject, CDDéb As Integer, CDEch As Integer, CTerm As Integer, L As Long, RngLig
   Set LOt = Feuil1.ListObjects(1)
   CDDéb = LOt.ListColumns("Date de début").Index
   CDEch = LOt.ListColumns("Date d'échéance").Index
   CTerm = LOt.ListColumns("Terminé").Index
   For L = 1 To LOt.ListRows.Count
      Set RngLig = LOt.ListRows(L).Range
      If RngLig(1, CTerm).Value = "Oui" And RngLig(1, CDEch).Value <= Date Then
         RngLig(1, CDDéb).Value = RngLig(1, CDEch).Value
         RngLig(1, CTerm).Value = Empty
         End If
      Next L
   End Sub
 
- 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

Retour