Comptage auto données avec conditions sur cellules voisines

Bonjour

Je cherche à automatiser le comptage de données réparties dans un tableau dont la taille est susceptible de changer à tout moment.

Le but est d'extraire automatiquement le nombre d'occurences d'une chaîne donnée, et de la comptabiliser dans une catégorie ou une autre selon les valeurs d'autres cellules sur la même ligne.

Merci d'avance pour toute suggestion

Sylvain

PS : Pour l'instant j'arrive à compter le nb total de "Formateur" (par exemple) et à le diviser par 3 car il y a 3 ligne par personne physique. Par contre je n'arrive pas à faire la même extraction pour une seule société, pas plus que je n'arrive à comptabiliser les personnes formées en ne tenant compte que de leur niveau actuel...

Le fichier Excel associé à cet exemple est téléchargeable ici :

https://www.excel-pratique.com/~files/doc/B1tq7Test.xls

2comparaison.zip (15.26 Ko)

Bonjour,

bv:

regarde le fichier joint

Les zones sont dynamiques, (regarde du côté de Insert/Name/Define)

Tu peux rajouter des données dans ton tableau, ce sera pris en compte

https://www.excel-pratique.com/~files/doc/hopla_v1.xls

Merci pour cette piste, je vais essayer d'en récupérer le maximum.

Par contre dans le fichier que tu m'as envoyé ça ne récupère pas parfaitement le nb des personnes formées. Pour la société A par exemple il n'y a qu'une seule personne formée (niveau actuel >=2) et dans ton rapport ça m'en liste 4... Je vais voir si je peux ajouter un filtrage supplémentaire sur "Niveau Actuel"

En tout cas re-merci pour ton aide

C'est parfait, en adaptant la formule ça marche !!

=SUMPRODUCT((Societe="A")*(Niveau>=2)*(Statut="Niveau Actuel"))

Merci !!

Re-

effectivement, j'avais pas bien vu les données....

Regarde le fichier :

https://www.excel-pratique.com/~files/doc/hopla_v2.xls

Edit : Félicitations

Bon, ben je suis obligé de reconnaître que je suis encore très loin de m'en sortir tout seul

Si la formule ci-dessus marchait parfaitement dans mon fichier Excel de test, sur une seule feuille, je n'arrive pas à la faire marcher sur un document beaucoup plus complet et sur plusieurs feuilles... Au lieu de me sortir la bonne valeur numérique je me retrouve avec #####.

En résumé :

  • J'ai utilisé Insert / Name / Define pour sélectionner une colonne entière (la D) sur la feuille "Knowl Data" et lui affecter le nom "Dashboard_Role". Ca me donne la syntaxe suivante : ='Knowl Data'!$D:$D . Dans cette colonne on trouve différentes valeurs comme "MCAD Presales", "MCAD Consultant", etc
  • Ensuite je vais sur une feuille "Dashboard" et j'entre la formule :
= SUMPRODUCT(Dashboard_Role="MCAD Presales")

Et là je récupère des ##### à la place du nb de "MCAD Presales" dans ma zone "Dashboad_Role"

Y aurait il un problème pour passer d'une feuille vers l'autre ?

Edit : J'ai peut être trouvé une piste en ajoutant *1 derrière.

Je me suis aussi passé de la zone et j'ai mis une réf directe aux cellules

=SUMPRODUCT(('Knowl Data'!$D$1:$D$1000="MCAD Presales")*1)

Pour la 1ère formule ça marche, je vais tester les autres

Re-,

la fonction SUMPRODUCT ne supporte pas les colonne entières.....

C'est pour cela que j'avais rentrée une formule permettant de définir les zones nommées..

Si je me souviens bien, en anglais, cela doit donner :

=Offset(Feuil1!$D$3,,,COUNTA(Feuil1!$D:$D)-1)

Avec ce code, la zone part de la cellule D3, et la hauteur de cette zone est donnée par le nombre de cellules non vides dans la colonne D moins 1 (le titre)

Je m'en suis sorti assez simplement en indiquant directement une zone de 1000 lignes dans la feuille de référence, ce qui devrait largement aller dans mon cas car je ne pense pas que ce tableau dépassera un jour les 500-600 lignes.

Ca me donne :

=SUMPRODUCT(('Knowl Data'!$D$1:$D$1000="MCAD Presales")*1)

Sinon, fort de ce 1er succès (mille merci !!), je m'attaque maintenant au calcul automatique d'une variable assez proche (c'est la dernière, promis), sauf qu'au lieu de compter le nombre de valeurs correspondant aux critères, je voudrais cette fois-ci calculer la somme de leurs valeurs respectives.

Exemple : Somme des niveaux actuels MCAD atteints par les utilisateurs de la société A

Je suis entrain de chercher du coté de SUMIF mais je n'ai pas encore trouvé la bonne syntaxe pour tenir compte de 2 conditions (avec 1 seule ça marche)

Edit : Je pense avoir trouvé, il semble qu'en entrant la formule avec CTRL + SHIFT + ENTER au lieu de juste ENTER ça règle mon pb de syntaxe... vive l'informatique

=SUM(IF((Societe="A")*(Statut="Niveau actuel");Niveau))

Re-,

ne sachant ce qu'est MCAD, essaie avec cette formule :

=SOMMEPROD((Société=I2)*(Actuel="Niveau actuel")*(GAUCHE(Role;4)="MCAD")*Niveau)

Supposant que le nom de la société est en I2

Remplace Gauche par LEFT, en anglais, et remplace peut-être le point virgule par une virgule

Tout roule maintenant, c'est parfait

Merci beaucoup pour ton aide !!

J'ai même utilisé la définition dynamique des zones avec l'instruction que tu m'avais indiquée dans ta première réponse : =Offset(Feuil1!$D$3,,,COUNTA(Feuil1!$D:$D)-1)

Bref, mon tableau récapitulatif est tip-top et j'en suis ravi.

Si on pouvait envoyer une bière par email tu en recevrais une caisse

PS : Je vais maintenant pouvoir m'attaquer à mon dernier défi Excel de la semaine (j'espère même du mois, voire de l'année) : Arriver à récupérer automatiquement dans un tableau la valeur maxi des niveaux atteints par les utilisateurs d'une société donnée. Mais bon, je pense que je vais utiliser un autre post pour ne pas mélanger tous les sujets.

Rechercher des sujets similaires à "comptage auto donnees conditions voisines"