Empêcher des erreurs de planification

Résolu
Bonjour,

Je dois faire un planning avec une condition incontournable, une personne ne peut pas être sur le planning plus de 6 jours d'affilées. J'aimerais donc que le septième jour la case totale devienne noire pour alerter l'utilisateur.

Le tableau se présente ainsi (tout est exprimé en heures 00:00 sauf le nombre de repas pris) : pour chaque jour 5 cases (Heures d'arrivées, Heures de départ, Temps de pause, Nombre de repas pris, Total journée en fin de semaine une case total hebdomadaire)

Dans la case Total jour j'ai déjà une formule : =SI(OU(AH9="";AI9="");0;MOD(AI9-AH9-AJ9-(AK9*TEMPS(0;45;0));1))

Je voudrais y ajouter que si les 6 cases Total jour précédentes sont supérieures à 0 alors faux donc case en noir ou mettre une incapacité en empêchant de compléter le 7ème jour.

Je n'ai pas fait la formule de base puisque je reprends le relais et je ne suis pas débutante mais pas loin.

Pensez-vous que ce soit possible ?

Merci d'avance,

7 réponses

  1. Contributeur
    Bonjour

    pas tout compris dans la configuration de vos données

    à adapter
    si vous avez les jours en colonne, avec en A l'heure de début et une ligne par jour.
    sélectionnez le champ de début à partir de la 7° ligne sous le premier jour du tableau
    données/ Validation/ personnalisé
    choisissez:Personnalisé et coller la formule:

    =NB.SI(DECALER(INDIRECT(ADRESSE(LIGNE()-1;1));-5;0;6);">0")<6

    et cette solution vous interdira de placer une 7° valeur dans la colonne de début
    Vous pouvez bien sur selon les options Excel y ajouter un mesage d'avertissement.
    crdlmnt
    0


    1. Merci Vaucluse pour ses éléments de réponses.

      Voici une image de mon planning. Je ne vois pas comment adapté votre formule à celui-ci sachant qu'il y a déjà des formules dans
      - Repas =SI(UC9=0;0;SI(ET(UC9<TEMPS(13;15;0);UD9<=TEMPS(19;45;0);UD9>TEMPS(12;45;0));1;SI(ET(UC9<TEMPS(13;15;0);UD9>TEMPS(19;45;0));2;SI(ET(UC9>=TEMPS(13;15;0);UD9>TEMPS(19;45;0));1;SI(ET(UC9>TEMPS(13;15;0)

      - Tot.j
      (=SI(OU(TR9="";TS9="");0;MOD(TS9-TR9-TT9-(TU9*TEMPS(0;45;0));1))

      - Total Hebdo
      =PX10+QC10+QH10+QM10+QR10+QW10+RB10

      Peut-être puis-je la mettre dans la colonne Arrivée, de sorte que s'il y a des données dans TX9, UC9, UH9, UM9, UR9, UW9 alors on ne peut rien mettre dans VB9 ?

      Merci pour votre aide.
      Cordialement,
      0
      1. Contributeur
        tout ça est illisible, je m'arrache les yeux
        si vous pouvez mettre un exemple même avec des infos bidonnées,de votre fichier sur
        https://www.cjoint.com/
        et revenir ici coller le mien donné par le site, on pourrait peut être s'en sortir.
        A vous ;lire
        0
      2. @VaucluseVoici Vaucluse : http://www.cjoint.com/data/0BmnMvmETXi.htm
        Cordialement,
        0
    2. Contributeur
      Voyez si cela convient, je suis un peu à la bourre pour tout vérifier
      en principe l'entrée est interdite si les 6 jours précédents ont un total > 0 et un message s'affiche
      https://www.cjoint.com/c/EBmoA2CEG3D
      à vérifier

      crdlmnt
      0
      1. Merci pour votre aide, sans vous ma planification s'annonçait laborieuse.

        Effectivement cela fonctionne bien pour la première ligne. Comment dois-je m'y prendre pour l'étendre aux autres lignes et sur la totalité de l'année ?

        Cordialement,
        Mamka
        0
        1. Contributeur
          Si tout va bien, (ce qui reste à démontrer,) la mise en place va de AL3 à BTA100
          Début en AL car on ne peut démarre le système qu'après le 6° jour
          si ça ne fonctionne pas, revenez, il y a peut être un peu d'ajustage à faire

          crdlmnt
          0
      2. Vaucluse,

        Les formules qui sont sous le tableau sont à conserver c'est ça ?

        Cordialement,
        0
        1. Contributeur
          ????
          je n'ai pas placé de formule dans le tableau.

          Pour voir la solution mise en place il faut :

          sélectionner une cellule au hasard à partir de AL3
          Ruban/ Données/ Validation et voyez la formule qui s'affiche en bas de la fenêtre.

          Elles s'applique à n'importe quelle cellule de la plage. AL3:BTA100

          cette formule interdit d'entrer une valeur dans la cellule choisie si les 6 précédentes colonnes intitulées Tot. j sont >0 sur la même ligne.
          Et ceci quelque soit la cellule sélectionnée, puisque c'est elle qui spécifie le départ des champs calculés.

          Entre AL3 et BTA100, vous pouvez effacer ou rajouter les formules que vous voulez, il n'y a aucune incidence sur le système.
          La seule contrainte est de bien garder le texte du titre des colonnes de cumuls en ligne 2 pour toutes ces colonnes tel qu'il est écrit en F2

          crdlmnt
          0
      3. Bonjour Vaucluse,

        Elles sont pas dans le tableau mais en dessous.
        J'ai en A12 : =SOMMEPROD((B2:BAT2=$F$2)*(B3:BAT3>0))
        En AF 9 : =NB.SI.ENS(DECALER(INDIRECT(ADRESSE(2;COLONNE()-26));0;0;;25);F2;DECALER(INDIRECT(ADRESSE(LIGNE();COLONNE()-26));0;0;;25);">0")
        En AF 13 : =COLONNE()
        En AF 14 : =COLONNE(F1)

        Pour l'appliquer aux autres lignes ou dans un autre classeur du même type, je dois juste reprendre la formule indiquée dans la validation des données. Super !

        Merci infiniment !

        Mamka.
        0
        1. Contributeur
          Ces formules sont des tests que j'ai malencontreusement oublié de sup^primer. Elle n'ont aucune utilité.
          vous pouvez les supprimer
          crdlmnt
          0
      4. Pas de soucis, merci Vaucluse.

        Mamka
        0