Calcul de dates d'échéance

1

Bonjour,

Je souhaiterai incrémenter des dates d'échéance dans un tableau de visites périodiques.

Je m'explique :

Date de départ : 30/09/17 (samedi)

Date de calcul automatique : dernier samedi du mois suivant, soit le 28/10/17.


Même formule pour l'avant dernier vendredi du mois.

Quelqu'un aurait une idée de formule pour ces deux exemples ???

(excel pro 2013)

Merci d'avance

Yann

    Posté le 8 septembre 2017, 04:51
    par honu57
    Répondre
    0

    Bonjour

    A tester

    pour le samedi 

    =FIN.MOIS(A1;1)-JOURSEM(FIN.MOIS(A1;1))

    pour le vendredi

    =FIN.MOIS(A1;0)-JOURSEM(FIN.MOIS(A1;0)+1)-7

    Posté le 8 septembre 2017, 06:40
    0

    Bonjour,

    Je reformule ta demande car je ne suis pas certain de bien la comprendre.

    J'interprète de la manière suivante :

    tu désires obtenir une date d'échéance qui correspond au même jour de semaine que la date de départ mais un mois plus tard.

    Si c'est bien cela, je te propose la solution suivante :

    http://www.cjoint.com/c/GIiwXrUYACv

    Tu cliques sur le lien et tu suis les instructions pour récupérer le fichier

    La formule est : 

    =SI($A1="";"";FIN.MOIS($A1;1)-7-JOURSEM(FIN.MOIS($A1;1);2)+JOURSEM($A1;2))

    Le premier test est pour vérifier que la colonne A contient bien une date.

    Il me semblait illogique que tu demandes pour le vendredi l'avant dernier vendredi du même mois mais je me trompe peut être.  

    Si c'est le cas il faudra que tu m'expliques ce que l'on fait lorsque le vendredi tombe le dernier vendredi du mois ???

    Merci de confirmer si cela résout ton problème.

    A+

    Chris


    CHRIS Posté le 9 septembre 2017, 01:02
    par CHRIS
    0

    Bonjour et merci pour le temps passé à me répondre.

    Alors Chris, la formule est proche de mon attente. Mais je prends l'exemple suivant :

    Date de départ : 24/11/17

    Date obtenue : 22/12/17, or dans ce cas, j'aurais souhaité le 29/12/17 (dernier vendredi du mois).


    Merci de me dire si tu as une solution (toujours obtenir le dernier du mois ou le premier, ou le deuxième, etc... du même jour de semaine)

    Posté le 15 septembre 2017, 02:56
    par honu57
    0

    Bonjour honus57,

    Désolé mais je ne comprend pas ta demande :

    "toujours obtenir le dernier du mois ou le premier, ou le deuxième, etc... du même jour de semaine)"

    Qu'est ce que tu désires : le dernier du mois suivant ou le premier du mois suivant ou le deuxième du mois suivant... 

    C'et probablement simple mais, hors contexte... c'est incompréhensible

    Peux tu expliquer et illustrer par plusieurs exemples ce que tu veux exactement

    A bientôt

    Chris

    Posté le 15 septembre 2017, 09:37
    0

    Bonjour honus57

    Je t'ai fait 2 propositions en annexe :

    http://www.cjoint.com/c/GIqrzOJyWvv

    Ma première proposition calculais le même jour de semaine 1 mois plus tard

    Les 2 propositions ci-jointes sont :

    1 Calcul 1 mois plus tard avec ajustement en + ou en moins pour retrouver le même jour de semaine que la date d'origine ce qui veut donc dire que la date d'échéance peut se retrouver dans le deuxième mois suivant le mois de la date d'origine

    2 Calcul 1 mois plus tard avec ajustement uniquement en moins pour retrouver le jour de semaine de la date d'origine le plus proche de la fin du mois mais uniquement en moins (cette solution est un peu compliquée mais cela marche - je pense qu'il y a moyen d'améliorer avec un algorithme mais je ne l'ai pas trouvé alors je me suis résigné à tester et le jour semaine de la fin du mois suivant et le jour semaine de la date d'origine pour calculer le nombre de jour qu'il faut déduire de la date de fin de mois).

    Dis moi si, cette fois ci, l'une ou l'autre convient

    A+

    Chris

    CHRIS Posté le 16 septembre 2017, 19:35
    par CHRIS
    0

    Bonjour Chris,

    Désolé de ne pas m'exprimer plus explicitement...

    En fait, c'est un prévisionnel d'intervention que je souhaite. Des clients me demandent d'intervenir tous les derniers jeudi du mois, par exemple. Ou d'autres, tous les premiers lundi du mois... Je cherche une formule qui répondent à cette attente, mais sans succès pour l'instant...

    J'espère avoir été plus clair...

    Merci d'avance et merci aussi pour le temps que tu m'accordes !

    Yannick 

    Posté le 19 septembre 2017, 03:01
    par honu57
    0

    Bonjour Yannick

    Oufti.... tu aurais pu le dire plus tôt ! Ce n'est pas du tout ce que j'avais compris et tu m'as bien fait cogiter... pour des prunes.  

    Enfin, c'est comme cela que l'on progresse dans Excel.

    Pouvons nous dire que la première date correspondra TOUJOURS à la règle : à savoir que le calcul devra ajouter 1 mois et retrouver le même jour semaine correspondant ?

    Je dis cela car il se pourrait que, lors de l'entrée en relation, l'entretien se fasse immédiatement (càd n'importe quel jour de la semaine) mais que la règle prenne effet seulement pour les interventions suivantes.  

    Dans ce cas , cela voudrait dire qu'il faudrait avoir un signalétique client qui donne les règles pour chaque client.

    Par contre, si nous pouvons nous fier à la date d'origine pour retrouver le même jour le mois suivant alors je te propose la solution suivante :

    http://www.cjoint.com/c/GItrfrmmKYv

    Voir ECHEANCE 3

    Cela me semble correspondre à tes souhaits POUR AUTANT QUE LA DATE ORIGINE CORRESPONDE A LA REGLE ET QUE LE DELAI ENTRE 2 ENTRETIENS SOIT TOUJOURS DE 1 MOIS.

    J'espère que cette fois ci nous y sommes...

    Je croise les doigts en attendant ta confirmation...

    A+

    Chris


    CHRIS Posté le 19 septembre 2017, 19:11
    par CHRIS
    0

    Bonjour Chris,

    Euh, non...

    Je te donne les premières incohérences et te fais suivre la réponse que j'attends :

    Date de départ : 30/09/17 (premier samedi du mois)

    Date donnée : 04/11/17

    Date souhaitée : 28/10/17 (premier samedi du mois)


    Date de départ : 02/10/17 (premier lundi du mois)

    Date donnée : 30/10/17

    Date souhaitée : 07/11/17 (premier lundi du mois)


    Date de départ : 03/10/17 (premier mardi du mois)

    Date donnée : 31/10/17

    Date souhaitée : 07/11/17 (premier mardi du mois)

    Merci d'avance pour ta patience.


    Yannick


    Posté le 28 septembre 2017, 02:27
    par honu57@mail.pf
    0

    Salut,

    Ne désespère pas : j'y travaille mais ce n'est pas évident.

    Néanmoins je crois avoir trouvé une solution : je mets au point

    A bientôt

    Chris

    CHRIS Posté le 4 octobre 2017, 02:21
    par CHRIS
    0

    Bonjour,

    Je ne vais pas crier Eurêka trop tôt, mais je crois que j'y suis arrivé.

    Pour cela, j'ai du complètement revoir ma façon de faire et créer un calendrier dans un deuxième onglet.

    Avant de me lancer dans de longues explications, peux tu tester si tu arrives aux bonnes dates.

    Le tableau est sensé couvrir une année civile et ne montre donc pas les entretiens de l'année suivante.

    Pour cela, il faudra dupliquer le tableau, changer l'année en C2 de l'onglet Planning  et mettre les dates de départ ad hoc.  L'onglet Calendrier s'adaptera automatiquement.

    A noter aussi qu'il y a une colonne technique B qui a été masquée car inutile pour l'opérateur qui calcule le jour du mois de la date de départ.

    Tu verras que la formule principale est assez longue car j'ai privilégié le fait quelle soit duplicable dans tout le tableau : elle s'adapte grâce à l'usage des $ pour figer ou relativer les adresses de cellule ainsi que l'usage du numéro des colonnes pour faire évoluer les adresses.

    Je t'ai prévu 20 clients (si plus il suffira de dupliquer les lignes du tableaux.

    http://www.cjoint.com/c/GJeiZOuf45G

    Fais tous les tests imaginables et si tout fonctionne bien, reviens moi et poses les questions nécessaires afin je te fasse un "Comment cela marche" adapté à tes connaissances.

    Ne sois pas effrayé par la longueur de la formule car, si tu la découpe, tu t'apercevras qu'il y a des redondances nécessaires.  Par exemple : il faut tester si, quand le jour du mois est égal à 5 (donc forcément le dernier du mois), s'il existe dans le mois suivant, un jour identique en 5ème position ce qui n'est pas toujours le cas.  Auquel cas il faut diminuer de 1 pour rechercher le 4ème qui sera forcément le dernier du mois.

    Du coup on doit tester le résultat du calcul ce qui implique que l'on développe 3 fois la formule de calcul : 1 fois pour le test ; 1 fois pour le résultat tel quel et une fois pour le calcul diminué de 1.

    Mais j'expliquerai tout cela dans le comment cela marche.

    Dis moi d'abord si cela correspond à ton attente avant de me lancer dans ces longues explications.

    Bon amusement

    Chris

      


    CHRIS Posté le 4 octobre 2017, 11:16
    par CHRIS
    0

    Bonjour,

    A peine je t'ai envoyé le dernier projet que j'ai essayé la date du 24/11/2017 et je me suis aperçu que, dans certain cas extrêmes la formule ne donnait pas ce que tu espérais.

    Je te représente un correctif dont la philosophie est la même mais où je traite ces cas extêmes :

    http://www.cjoint.com/c/GJfjnkDUNxG

    Cette fois-ci, j'espère que c'est la bonne...

    A noter que, suivant ta demande, le quatrième jour du mois est TOUJOURS considéré comme le dernier du mois donc il n'y aura JAMAIS de quatrième jour du mois (dans les mois où il en a 5).  

    Il y aura le premier ou le deuxième ou le troisième ou le dernier jour du mois (4 et 5)

    Est ce bien cela ?

    A bientôt

    Chris

    CHRIS Posté le 5 octobre 2017, 11:24
    par CHRIS
    0

    Bonjour,


    Cela à l'air de coller, mais je n'arrive pas à transcrire la formule dans mon tableau de base... (Et quelle formule !!! Tu as du bien te creuser le cerveau dis-donc !!!)


    Posté le 21 octobre 2017, 04:09
    par honu57@mail.pf
    0

    Bonjour,

    Je désespérais d'avoir de tes nouvelles...

    Tu as de la chance que je sois revenu voir : ton cas est déjà à la page 3 du forum...

    Peux-tu m'envoyer ton tableau de base pour que je me rende compte des différences entre les 2 tableaux ?

    Si confidentiel : enlèves les données sensibles et remplaces par quelques exemples anonymes.

    Comme tu le dis, c'est une assez longue formule et tout est calibré sur les données du tableau. Si celui-ci évolue (une colonne en plus ou inverser les colonnes etc....) il se peut que la formule ne réagisse plus comme elle devrait.

    Si ton tableau de base est strictement identique à celui envoyé, il devrait suffire de faire un copier/coller.

    A bientôt

    Chris

    CHRIS Posté le 21 octobre 2017, 09:46
    par CHRIS
    0

    23/10/2017 PERIODIQUE
    Client Nature de l'intervention particulière Date de la dernière intervention Périodicité Date de la prochaine intervention
    AAA Nettoyage des vitres de façade intérieure et des cloisons vitrées 12/10/2017 1 09/11/2017
    BBB Nettoyage rideau métallique 07/10/2016 3 06/01/2017
    Le calcul actuel pour la date de prochaine inter est celui la :

    =MOIS.DECALER(C3;D3)+JOURSEM(C3;2)-JOURSEM(MOIS.DECALER(C3;D3);2)

    (en E3)

    La case A1 (=AUJOURDHUI()) ne me sert que pour la mise en forme conditionnelle

    Désolé pour les nouvelles tardives... Très chargé en ce moment...

    Merci d'avance pour ta réactivité...

    Yannick


    Posté le 23 octobre 2017, 23:27
    par honu57@mail.pf
    0

    Bonsoir Yannick,

    Tu es toujours plein de surprises.  

    Cette fois tu ajoutes une périodicité dont tu n'avais jamais parlé jusque maintenant !!!

    De plus, tu n'envoies toujours pas ton tableau ce qui serait beaucoup plus simple pour moi.

    Si tu ne sais pas comment faire :

    Vas sur le site http://www.cjoint.com/  (le même que j'utilise pour t'envoyer les précédents fichiers)

    Tu suis les instructions pour charger ton fichier : créer le lien ; le copier / coller dans le forum

    Pas compliqué et tellement plus simple pour mieux se comprendre.

    En attendant ton fichier, je vais déjà envisager comment ajouter la notion de périodicité dans le calcul.  J'espère que la périodicité est uniquement en mois ??

    A bientôt

    Chris

    CHRIS Posté le 24 octobre 2017, 01:21
    par CHRIS
    0

    Re,

    Ne t'inquiete pas pour les autres périodicités. Ma formule me convient. Il s'agit juste de la prestation une fois par mois, qui doit toujours tomber sur le dernier samedi du mois...

    voici mon tableau :

    http://www.cjoint.com/c/GJya3MKU7GJ

    Posté le 24 octobre 2017, 02:56
    par honu57@mail.pf

    Si vous n'êtes pas inscrit sur le site, vous pouvez poster librement (en tant qu'invité).
    Pour cela, indiquez un pseudonyme (nom d'utilisateur) et une adresse email :