Index, Equiv, SommeProd et??

vgendron

XLDnaute Barbatruc
Bonjour le forum !

j'ai un petit souci sans caractère d'importance puisque c'est juste ma curiosité qui me motive ici.
ci joint mon fichier exemple

soit un tableau (vert) de 3 colonnes (Sexe - Catégorie - Age)
je voudrais récuperer dans un autre tableau (en jaune), tous les ages répondant à un double critère:
(Sexe=H) ET (Catégorie=Junior)

sous le tableau, j'ai utilisé la fonction Sommeprod qui me donne le nombre de lignes répondant à ce double critère,
je me suis également amusé à "décomposer" cette sommeprod (colonnes E F G)
en colonne I et J, je récupère des infos telles que le numéro de la ligne qui répond au critère et la valeur désirée.
Ce qu'il me manque donc. c'est la formule qui permettrait de récupérer les résultats directement dans le tableau jaune...

le TCD me direz vous. oui, j'ai fait aussi (onglet TCD)
mais, je suis quasi sur qu'il y a un moyen de récupérer les indices de lignes directement (ou pas..)de cette fameuse fonction sommeprod..
genre. décaler, indirect.. formule matricielle?? tout autant de fonctions que je ne maitrise pas assez à mon gout..

Donc mesdames mesdemoiselles messieurs.. à vot' bon coeur.. ;-)
PS: macro VBA ?... aussi. mais c'est pas drole ;-)
 

Pièces jointes

  • Classeur1.xlsx
    18.8 KB · Affichages: 47
  • Classeur1.xlsx
    18.8 KB · Affichages: 53
  • Classeur1.xlsx
    18.8 KB · Affichages: 53

vgendron

XLDnaute Barbatruc
Re : Index, Equiv, SommeProd et??

Bon bah voila.. suffit de chercher ;-)
je viens de découvrir la fonction "Petite.valeur".. c'est sympa tout plein.

bon. me reste à voir comment rendre une formule "partiellement" matricielle....
dans ma colonne jaune:
toutes les formules sont matricielles et identiques.. à part la référence à la cellule Kn; ici K5 tout à droite
=INDEX(Tab_Age;PETITE.VALEUR(SI((Tab_Sexe="H")*(Tab_Cat="Junior")=1;LIGNE(Tab_Age)-MIN(LIGNE(Tab_Age))+1);K5))
 

Pièces jointes

  • Classeur1.xlsx
    19 KB · Affichages: 48
  • Classeur1.xlsx
    19 KB · Affichages: 47
  • Classeur1.xlsx
    19 KB · Affichages: 52

R@chid

XLDnaute Barbatruc
Re : Index, Equiv, SommeProd et??

Bonjour,
bon. me reste à voir comment rendre une formule "partiellement" matricielle....
J'ai pas bien compris,
essayer en L3,
Code:
=SIERREUR(INDEX(Tab_Age;PETITE.VALEUR(SI((Tab_Sexe="H")*(Tab_Cat="Junior");LIGNE(INDIRECT("1:"&LIGNES(Tab_Age))));LIGNES($3:3)));"")
@ valider toujours par Ctrl+Maj+Entree
@ tirer vers le bas
@ +
 

vgendron

XLDnaute Barbatruc
Re : Index, Equiv, SommeProd et??

Salut Rachid,

ca marche également très bien. merci..et finalement.. la mienne aussi...
ce qui m'a mis sur la voie..?
tes 3 dernières lignes: surtout la 2eme
@ valider toujours par Ctrl+Maj+Entree
@ tirer vers le bas
@ +

Ce qui ne fonctionnait pas chez moi c'est ca:
je sélectionne la range L3:L10
je valide Ctrl+maj+Entrée (donc la range complète est protégée)
ensuite. impossible de modifier les cellules suivantes.. normal. c'est matriciel
bon.. suis pas encore au point. mais ca va venir ;-)
Merci
 

R@chid

XLDnaute Barbatruc
Re : Index, Equiv, SommeProd et??

Bonjour,
Ok,
sélectionner la plage L3:L10, coller la formule dans la barre de formules et valider en Matricielle,
Code:
=SIERREUR(INDEX(Tab_Age;PETITE.VALEUR(SI((Tab_Sexe="H")*(Tab_Cat="Junior");LIGNE(INDIRECT("1:"&LIGNES(Tab_Age))));LIGNE(INDIRECT("1:"&LIGNES(Tab_Age)))));"")
@ +
 

vgendron

XLDnaute Barbatruc
Re : Index, Equiv, SommeProd et??

Re,
finalement. je préfère la mienne...;-)
elle me permet de "classer" les résultats dans l'ordre que je veux et défini en colonne K

mais bon. toi tu me sors deux solutions en 5mn alors que moi j'en sors 1 en.. j'ose meme pas dire combien de temps..;-)
Merci
 

Discussions similaires

Statistiques des forums

Discussions
312 296
Messages
2 086 962
Membres
103 409
dernier inscrit
Dave56