INDEX EQUIV avec plusieurs résultats

CCIL

XLDnaute Nouveau
Bonjour à tous,

Les contributeurs de ce forum étant vraiment géniaux, j'en profite !
J'ai enfin compris la formule INDEX EQUIV avec 1 seul résultat.
Mais comment fait-on si on souhaite faire apparaitre 2 ou 3 résultats (correspondants aux 2 mêmes critères de recherche ?)

Sur mon fichier ci-joint, je veux que dans mon tableau apparaissent les 2 (ou +) vendeurs de paris

D'avance, milles mercis !!
 

Pièces jointes

  • EQUIPE.xlsx
    45.3 KB · Affichages: 196
  • EQUIPE.xlsx
    45.3 KB · Affichages: 169
  • EQUIPE.xlsx
    45.3 KB · Affichages: 176

hbenalia

XLDnaute Occasionnel
Re : INDEX EQUIV avec plusieurs résultats

Bonjour à tous,

Saisir les formules suivantes (en matricielles):
En D7 :
Code:
=INDEX($F$6:$F$13;EQUIV(1;($G$6:$G$13=$C7)*($H$6:$H$13=$B7);0);1)
En D8 :
Code:
=INDEX($F$6:$F$13;EQUIV(1;($G$6:$G$13=$C8)*($H$6:$H$13=$B7);0);1)
et après validation en matricielles (par Ctrl+Maj+Entree) les copier respectivement (en D9 et D10)...

Cordialement
 

job75

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Bonjour CCIL, hbenalia, le forum,

Le fichier du post #1 n'est pas adapté à la question posée :rolleyes:

Mais en l'état, s'il s'agit simplement de renseigner les cellules D7 à D10, entrer en D7 :

Code:
=INDEX(F$6:F$13;EQUIV(1;(G$6:G$13=C7)*(H$6:H$13=RECHERCHE("zzz";B$6:B7));0))
Formule à valider matriciellement par Ctrl+Maj+Entrée et tirer vers le bas.

Fichier joint.

Nota : attention, le fichier du post #1 était en mode de calcul "sur ordre"...

A+
 

Pièces jointes

  • EQUIPE(1).xls
    48 KB · Affichages: 156
  • EQUIPE(1).xls
    48 KB · Affichages: 133
  • EQUIPE(1).xls
    48 KB · Affichages: 131

CCIL

XLDnaute Nouveau
Re : INDEX EQUIV avec plusieurs résultats

Bonjour,

En effet, le 1er fichier joint ne correspondait pas à ma demande, donc je ne suis pas sûre de comprendre la réponse... ;-)

Je souhaite pouvoir récupérer automatiquement toutes les réponses correspondant à 2 critères d'une formule INDEX EQUIV.
Dans cette exemples, avoir automatiquement tous les vendeurs de paris...

Ci-joint le bon fichier !

Par avance, milles merci !!
 

Pièces jointes

  • EQUIPE.xlsx
    21.3 KB · Affichages: 125
  • EQUIPE.xlsx
    21.3 KB · Affichages: 94
  • EQUIPE.xlsx
    21.3 KB · Affichages: 88

R@chid

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Bonjour @ tous,
Demande n'est pas très claire, essayer en D7,
Code:
=SIERREUR(INDEX(F$7:F$17;PETITE.VALEUR(SI((H$7:H$17=B$7)*(G$7:G$17=C7);LIGNE(INDIRECT("1:"&LIGNES(F$7:F$17))));NB.SI(C$7:C7;C7)));"")
@ valider par Ctrl+Maj+Entree
@ tirer vers le bas
@ + +
 

job75

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Bonjour CCIL, salut R@chid,

Oui la demande n'est toujours pas bien claire.

Juste pour montrer ce que l'on peut faire en VBA :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range, tablo, t As String, i As Long
Set r = Intersect(Target, Range("B7:C" & Rows.Count), Me.UsedRange)
If r Is Nothing Then Exit Sub
tablo = Range("F7:H" & Cells(Rows.Count, "F").End(xlUp).Row)
For Each r In Intersect(r.EntireRow, [B:B]) 'si plusieurs cellules
  t = ""
  For i = 1 To UBound(tablo)
    If tablo(i, 3) = r And tablo(i, 2) = r(1, 2) _
      Then t = t & vbLf & tablo(i, 1)
  Next
  r(1, 3) = Mid(t, 2)
  r(1, 3).WrapText = True 'renvoi à la ligne
  r.EntireRow.AutoFit 'ajustement
Next
End Sub
J'ai mis des listes de validation en C7 et C8.

Fichier (2).

A+
 

Pièces jointes

  • EQUIPE(2).xls
    58 KB · Affichages: 95
  • EQUIPE(2).xls
    58 KB · Affichages: 86
  • EQUIPE(2).xls
    58 KB · Affichages: 90

CCIL

XLDnaute Nouveau
Re : INDEX EQUIV avec plusieurs résultats

Merci pour vos réponses !
Le résultat de Job75 en VBA est mal, mais il me faudrait un nom par case, donc je préfèrerais pas formule.
Je vais essayer d'être plus claire, notamment avec le fichier joint.


Comme pour les manager, où la formule donne directement "DOE JOHN" ( le manager travaillant à Paris)

J'aimerais la même chose pour les vendeurs : qu'une formule trouve automatiquement "SUPERMAN LANE" et "TARTANPION LOIC" pour les vendeurs travaillant à Paris

=> ma difficulté vient du fait que qu'il y a 2 résultats pour les critères "vendeur" et "Paris"
ce n'est donc pas la même formule que pour le manager.

En espèrant avoir été plus claire !
 

Pièces jointes

  • EQUIPE.xlsx
    20.8 KB · Affichages: 82
  • EQUIPE.xlsx
    20.8 KB · Affichages: 74
  • EQUIPE.xlsx
    20.8 KB · Affichages: 85

R@chid

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Bonjour @ tous,
Salut Job75,
Essayer en D14,
Code:
=SIERREUR(INDEX(G$14:G$19;PETITE.VALEUR(SI((I$14:I$19=DECALER(B$14;ENT((LIGNES($14:14)-1)/3)*3;))*(H$14:H$19=C14);LIGNE(INDIRECT("1:"&LIGNES(G$14:G$19))));CHOISIR(MOD(LIGNES($14:14)-1;3)+1;1;1;2)));"")
@ valider par Ctrl+Maj+Entree
@ tirer vers le bas
@ + +
 

job75

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Re,

Si je comprends bien vous voulez simplement présenter le tableau des colonnes G:I différemment.

Alors cette macro lancée par le bouton :

Code:
Sub CréerTableau()
Dim P As Range
Application.ScreenUpdating = False
Range("B4:D" & Rows.Count).ClearContents 'RAZ
Set P = Range("F4:I" & Cells(Rows.Count, "F").End(xlUp).Row)
P.Sort P(1, 4), , P(1, 3), Header:=xlNo 'tri sur 2 colonnes
[B4].Resize(P.Rows.Count) = P.Columns(4).Value
[C4].Resize(P.Rows.Count) = P.Columns(3).Value
[D4].Resize(P.Rows.Count) = P.Columns(2).Value
P.Sort P(1) 'tri sur la 1ère colonne
End Sub
Les formats (couleurs, polices, bordures) du tableau B: D sont appliqués par 2 MFC.

Fichier (3).

A+
 

Pièces jointes

  • EQUIPE(3).xls
    61 KB · Affichages: 93

CCIL

XLDnaute Nouveau
Re : INDEX EQUIV avec plusieurs résultats

Merci pour les pistes.

Pour la piste formule, je pense que c'est effectivement quelque chose comme cela que je recherche mais la formule ne fonctionne pas, il doit y avoir une erreur de parenthèse peut être ? (ci-joint mon fichier test)

Pour la piste VB, c'est impressionnant ! j'essaie de le reproduire par équivalence sur mon fichier original, sous VB mais mes connaissances sont trop limitées je pense...
 

Pièces jointes

  • EQUIPE.xlsx
    21 KB · Affichages: 72
  • EQUIPE.xlsx
    21 KB · Affichages: 79
  • EQUIPE.xlsx
    21 KB · Affichages: 76

CCIL

XLDnaute Nouveau
Re : INDEX EQUIV avec plusieurs résultats

Hi !

Je viens de comprendre le problème (outre mes neurones de blondes ;-)

Il s'agit d'un problème de version (cf fichier joint).
Vous devez avoir une version Excel plus récente que moi (je suis sous 2007).
Et malgré la conversion des fichiers, il y a un bug.

J'essaie néanmoins de la reproduire par équivalence, mais ce n'est pas gagné...;-)
Ou alors c'est parce que lors de la conversion une partie de la formule est tronquée ?

Merci en tout cas !!

CCIL
 

Pièces jointes

  • erreur version excel.jpg
    erreur version excel.jpg
    32.4 KB · Affichages: 164
  • Erreur formule.jpg
    Erreur formule.jpg
    28.4 KB · Affichages: 179

CCIL

XLDnaute Nouveau
Re : INDEX EQUIV avec plusieurs résultats

Je pense que certaines formules n'existent pas avec excel 2007 (je vais donc pleurer en interne pour avoir une version plus récente), la formule a été crée sous quelle version ?
 

R@chid

XLDnaute Barbatruc
Re : INDEX EQUIV avec plusieurs résultats

Bonjour,
Oui surement la fonction SIERREUR() n'est pas disponible sur Excel2003,
Code:
=INDEX(G$14:G$19;PETITE.VALEUR(SI((I$14:I$19=DECALER(B$14;ENT((LIGNES($14:14)-1)/3)*3;))*(H$14:H$19=C14);LIGNE(INDIRECT("1:"&LIGNES(G$14:G$19))));CHOISIR(MOD(LIGNES($14:14)-1;3)+1;1;1;2)))
@ + +
 

ferdhy

XLDnaute Junior
Re : INDEX EQUIV avec plusieurs résultats

Bonjour,

Voici le fichier avec une solution probable.
J'ai ajouter la function INDIRECT et DECALER

Ferdhy
 

Pièces jointes

  • EQUIPE.xlsx
    20.6 KB · Affichages: 163
  • EQUIPE.xlsx
    20.6 KB · Affichages: 131
  • EQUIPE.xlsx
    20.6 KB · Affichages: 141

Discussions similaires

Réponses
6
Affichages
567

Statistiques des forums

Discussions
312 209
Messages
2 086 275
Membres
103 170
dernier inscrit
HASSEN@45