Calculer en fonction de plusieurs critères

Bonsoir,

Première question :
Je souhaite calculer le nombre total de personnels travaillant jour/jour en ayant la qualif “O”.

Par exemple, le personnel 13 travaille le 01 avril et a la qualif “O” (C43) dans ce cas en D86, il doit afficher 1.
Le personnel 14 est en repos donc ne travaille pas malgré avoir la qualif “O”. Donc en D86, toujours 1.
Les personnels 15 et 16 sont respectivement en repos et en vacances et ces deux personnels ont la qualif “A”.
Le personnel 17 travaille mais il a la qualif “A” donc il ne doit pas être compté parmi le personnel “O” en D86. Donc toujours 1 en D86.

  • Quelle formule doit-on utiliser pour que ce calcul se fasse ? Faut il sélectionner les personnels de 13 à 17 ou un par un ? J’ai essayé avec NB.SI.ENS, SOMME.SI.ENS, SOMMEPROD, SI !!! Mais je n’y arrive pas, ou je m’y prends mal. Ce sont des fonctions que je n’utilise pas.

Seconde question :
Par le contre, si le personnel 17 obtient la qualif “O” au mois de mai, je serai dans l’obligation de lui attribuer cette qualif dans la feuille suivante MAI.
Lorsque je modifierai le “A” en “O”, est ce que cela se calculera seul en fonction de ma première question ou est-ce une autre ?

Chaque personnel par jour à trois cases. En gros les 2 premières servent pour le travail de jour, la dernière pour celle de nuit. Il est possible que celle du milieu serve aussi pour la nuit.

-PAMJ : permanence de 08h à 19h (travail jour) / -OJ : Office de permanence 08h à 19h (travail jour) / -A : Accueil de 8h à19h (travail jour) / -AN : Accueil de nuit de 19h à 08h (travail nuit) / -BG2 : permanence de 19h à 03h (travail nuit) / -BGJ : Permanence spécifique de 19h à 08h (travail nuit) / -GPC : Grand chef de permanence de 19 h à 08h (travail nuit) / -ASD : Astreinte de 19h à 08h (travail nuit) / -RPJ : Repos compensatoire (ne travaille pas de 8h à 19h) / -QL : libre de 19h à 08h / -R : Repos en semaine / -WE : Repos le week-end / -P : Vacances

Merci
Cordialement et bonne soirée

Test planning INTERNET.ods

Bonjour @ld801_60

Il faudrait la définition de tes codes (PAMJ, ASD, R, P, etc.)

  • es-tu sûr de vouloir le résultat en D86 (cellule actuellement vide et sans libellé en col. A) ?
  • le personnel 13 travaille le 01 avril : comment le sait-on ? Parce qu’a été saisi PAMJ ou ASD ?
  • Le personnel 14 est détaché : comment le sait-on ? Parce que figure R ? Mais on trouve aussi R pour le personnel 15…

En bref, désolé mais je ne comprends pas ta question…

Merci de ne pas utiliser la fonction Ajouter une réponse pour répondre : ce site ne fonctionne pas comme un forum ou un chat (une seule réponse par utilisateur). En revanche on peut éditer ses questions ou ajouter des commentaires.

Cordialement

Bonjour,
J’ai rajouté les codes comme demandé dans la question

  • Oui je souhaite le résultat en D86

  • Désolé erreur de ma part pour le personnel 14. Il est en REPOS (car case R)

Là, je suis à la recherche d’un résultat pour les personnels ayant la qualif “O” (Colonne C) travaillant la nuit.
En D86, il faut que soit affiché les personnels ayant la qualification “O” travaillant la nuit pour le 01 avril. En l’occurrence sur mon exemple en D86 pour le 01 avril, il doit être affiché “1” car le personnel 13 travaille de nuit car “ASD” donc travaille de 19h à 08h.
Pour le 02 avril, en E86, 0 car les personnels ayant la qualif “O” ne travaillent pas. Le personnel 13 est en “QL” et le personnel 14 en repos (R)

Bonjour @ld801_60

Merci pour les précisions, j’ai pu comprendre le problème. Les fonctions telles que SOMMEPROD ou autres comparent des matrices mais dans ton cas le problème vient du fait que les cellules de la colonne C sont fusionnées par 3 (hormis celles des grades).

Concrètement par exemple pour le personnel 13 la fonction ne va pas comptabiliser car elle va comparer :

  • C43 et D43 (O et PAMJ)
  • C44 et D44 (vide et vide)
  • C45 et D45 (vide et ASD)

La solution la plus commode est d’ajouter une colonne (par exemple D) qui pourra être masquée et remplissant les cellules vides par formule. Je ne peux te proposer une formule à saisir en D5 et à copier jusqu’en bas car la suite n’est pas régulière (cellules non fusionnées en lignes 14 et 42). Le plus simple est de faire comme dans le classeur joint.

Dès lors on peut facilement utiliser en D86 : =SOMMEPROD(D5:D63="O";E5:E63="ASD")

Test planning_INTERNET.ods

Cordialement

Bonsoir @pierre-yves,

Merci c’est exactement ce que je cherchais. En effet, une problématique que je n’aurais pas trouvé comme créer d’autres colonnes.

Par contre, suite à cela, j’ai tenté de faire des imbrications ET, OU avec SOMMEPROD mais parfois ca ne fonctionne pas.
Il compte double ou alors ma fonction ne fonctionne pas correctement.

En effet, j’ai indiqué dans les codes plus haut, AN : Accueil de nuit de 19h à 08h (travail nuit) / -BGJ : Permanence spécifique de 19h à 08h (travail nuit) / -GPC : Grand chef de permanence de 19 h à 08h (travail nuit)

Mais lorsque le personnel P3 est GPC et BGJ, il travaille de nuit tout comme le personnel 6 qui est de AN et BGJ. Or dans ma première ébauche en AA74 il est indiqué 2 personnels travaillant de nuit (CE QUI EST LE CAS) mais avec la fonction SOMMEPROD, il est possible de voir en AA75 le chiffre 4 (COMPTE DOUBLE).

Comment régler ce problème?
(nouveau fichier modifié dans la question)

Merci, bonsoir

Bonsoir @ @ld801_60

Désolé, je ne peux investir trop de temps dans la compréhension fonctionnelle. Si GPC et BGJ sont 2 “travail de nuit” il faut bien les compter tous les deux ? Par ailleurs je ne comprends pas pourquoi tu inclus la plage $B11:$B41 dans ta formule puisque tu comptabilises les grades 1105. Pourquoi pas simplement quelque chose comme :

=NB.SI(AA15:AA41;“AN”)+NB.SI(AA15:AA41;“BG2”)+NB.SI(AA15:AA41;“BGJ”)+NB.SI(AA15:AA41;“GPC”)+NB.SI(AA15:AA41;“ASD”)