Menu

Exclure des lignes d'un comptage

-
Bonjour,

J'ai besoin de calculer une somme en excluant parfois des valeurs et parfois non. Je vous explique :
Dans les colonnes B à E il y a une liste d'informations sur les employés, distingués par un code couleur : Jaune = Collaborateur; Violet = Sous-traitant; Vert = Prêt d'une autre agence
Dans le reste du tableau (j'en suis à la colonne JH), je calcule les congés et d'autres infos du genre.
Cependant, lorsque je fais la somme des congés posés sur un jour J, il faut exclure ceux des personnes qui ne sont pas dans la catégorie "collaborateur". Le problème c'est qu'ils ne posent pas forcément leurs jours de congés en même temps donc on ne peut pas les exclure du calcul à chaque fois.

Suis-je assez clair ?

Existe-t-il une formule qui fasse ça ? Je n'y connais rien en VBA, j'ai téléchargé un pack de fonctionnalité pour compter les cellules par couleur et je pense qu'il est possible de le combiner avec autre chose ! (celui ci : https://www.excel-pratique.com/fr/fonctions-complementaires.php )


Merci d'avance de votre aide !

Configuration: Windows / Firefox 64.0
Afficher la suite 

Votre réponse

5 réponses

Messages postés
5
Date d'inscription
jeudi 24 novembre 2011
Dernière intervention
10 janvier 2019
0
Merci
Bonjour,

Tu peux le faire avec une formule matricielle. Mais pour t'aider, il faudrait nous fournir la structure de ton fichier (ou tout du moins celle des colonnes utiles pour le calcul).

Cordialement
Commenter la réponse de LaurentDu51
Messages postés
3
Date d'inscription
mercredi 9 janvier 2019
Dernière intervention
10 janvier 2019
0
Merci


Cette image suffit-elle ?
Commenter la réponse de adrien33480
Messages postés
5
Date d'inscription
jeudi 24 novembre 2011
Dernière intervention
10 janvier 2019
0
Merci
As-tu une colonne ou il est indiqué la catégorie de l'employé, collaborateur ou autre? Supposons que oui et que ce soit la colonne B. Supposons également que tu souhaites calculer le nombre de jour d'absence du 07/01/2019 (colonne JM).
Tu te place dans la cellule ou tu souhaites ton résultat et tu tapes la formule : =somme(SI(B11:B48="collaborateur";JM11:JM48;0)) pour calculer la somme sur les lignes 11 à 48. Et n'oublies pas d'appuyer sur CTRL+MAL+ENTER pour valider ta formule (formule matricielle).

Si tu n'as pas de colonne ou il est indiqué la catégorie d'employé, alors il va falloir créer un fonction en VBA
adrien33480
Messages postés
3
Date d'inscription
mercredi 9 janvier 2019
Dernière intervention
10 janvier 2019
-
J'ai créé une colonne indiquant la catégorie de collaborateur via les couleurs avec la formule suivante :
=SI(NO_COULEUR(C14)=NO_COULEUR($D$4);"collaborateur";SI(NO_COULEUR(C14)=NO_COULEUR($D$5);"stagiaire";SI(NO_COULEUR(C14)=NO_COULEUR($D$6);"prêt";"sous-traitant")))

Elle fonctionne à priori, mais la somme m'affiche 0 au lieu de 32 (j'ai bien fait CTRL+MAJ+ENTER, j'ai aussi essayé sans et ça m'affiche un message d'erreur)
Commenter la réponse de LaurentDu51
Messages postés
3
Date d'inscription
mercredi 9 janvier 2019
Dernière intervention
10 janvier 2019
0
Merci
C'est bon j'ai fini par trouver la solution, c'était plutôt simple en fin de compte ahah

=NB.SI.ENS(B11:B48;"=collaborateur";JI11:JI48;"=Congès")

Merci de ton aide en tout cas !
Commenter la réponse de adrien33480
Messages postés
5
Date d'inscription
jeudi 24 novembre 2011
Dernière intervention
10 janvier 2019
0
Merci
Désolé pour l'erreur, mais effectivement, ta colonne JI (ou JM de mon exemple) ne contient pas de valeur numérique, tu ne peux donc pas en faire la somme. Je te propose donc les 2 solutions suivantes, toutes les 2 en formules matricielle (tu verras, une fois que tu en as compris le fonctionnement, tu ne peux plus t'en passer) :
=SOMME(SI((B11:B48="collaborateur")*(JI11:JI48="Congés");1;0))
=SOMME((B11:B48="collaborateur")*(JI11:JI48="Congés")*1)
Commenter la réponse de LaurentDu51