Recherchev dans un tableau contenant plusieurs fois la même la valeur

Haracnico

XLDnaute Nouveau
Bonjour à tous,

Je dispose d'un fichier contenant ce tableau (voir fichier).
J'aimerai que dans une cellule, je puisse recherché via une formule la dernière valeur de la colonne Stock pour par exemple la source 19. Merci d'avance
 

Pièces jointes

  • test excel.xlsx
    10.7 KB · Affichages: 78

JHA

XLDnaute Barbatruc
Bonjour à tous,

A essayer , formule matricielle
Code:
=INDEX($D$2:$D$37;GRANDE.VALEUR(SI($A$2:$A$37=I8;LIGNE($A$2:$A$37));1)-1)
Si tu veux connaître la date, change la plage de l'index:
Code:
=INDEX($C$2:$C$37;GRANDE.VALEUR(SI($A$2:$A$37=I8;LIGNE($A$2:$A$37));1)-1)
comme cela tu as le nombre en stock et la date

JHA
 

Pièces jointes

  • test excel rev1.xlsx
    10.9 KB · Affichages: 79

JHA

XLDnaute Barbatruc
Bonjour à tous,

Tu peux avoir cette erreur si il n'y a pas de correpondance à ta recherche. Pour éviter cette erreur, tu peux ajouter à ta formule:
=sierreur(ta formule;"Pas de correspondance")

Toujours valider en matricielle

JHA
 

Haracnico

XLDnaute Nouveau
J'ai effectivement essayer d'étendre sur le fichier que je vous ai envoyer et aucun soucis même avec 26000 lignes. Le problème vient donc surement du fichier dont je m'occupe qui est sous Excel 2003 (Impossible de le passer en Excel 2007). Je vous laisse ci joint le fichier que je dois traiter. L'objectif est de renvoyer le dernière valeur de la colonne AD de la feuille "Mouvement" correspondant à la source 19 par exemple. J'ai bien valider en formule matricielle mais le problème persiste..
 

Pièces jointes

  • Test.xls
    546.5 KB · Affichages: 70

CISCO

XLDnaute Barbatruc
Bonjour à tous

La première proposition de JHA fonctionne très bien sur Excel 2003 (Cf. pièce jointe), mais il ne faut pas oublier de la valider en matriciel (Sélectionner la formule. Cliquer dans la barre de formule. Valider en appuyant sur les 3 touches Ctrl+Maj+Entrer). Par contre, SIERREUR n'existe pas sous Excel 2003... Pour contourner ce problème, tu peux essayer avec
Code:
SI(ESTNUM(GRANDE.VALEUR(SI($A$2:$A$37000=I8;LIGNE($A$2:$A$37000));1));INDEX($D$2:$D$37000;GRANDE.VALEUR(SI($A$2:$A$37000=I8;LIGNE($A$2:$A$37000));1)-1))

@ plus
 

Pièces jointes

  • test excel2003.xls
    45.5 KB · Affichages: 74
Dernière édition:

JHA

XLDnaute Barbatruc
Bonjour à tous,

C'est bien ce que je pensais, il n'y a pas de correspondance à la recherche donc erreur!
J'ai mis les données dans le même format (N° gamme, N° Source en format texte) pour éviter les soucis.
Sur 2003 on ne peut pas utiliser sierreur() donc j'ai modifié la formule en ajoutant une condition.

Ta recherche renvoie des "0", "1" ou des vides
Edit: Bonjour Dugenou:), bonjour Cisco:)

JHA
 

Pièces jointes

  • Test.xls
    538.5 KB · Affichages: 72

CISCO

XLDnaute Barbatruc
Bonjour à tous, bonjour JHA, Dugenou

Petite simplification de la formule proposée par JHA
Code:
SI(ESTERREUR(GRANDE.VALEUR(SI(Mouvements!$D$9:$D$24=D15;LIGNE(Mouvements!$D$9:$D$24)-8);1));"pas de correspondance";INDEX(Mouvements!$AD$9:$AD$24;GRANDE.VALEUR(SI(Mouvements!$D$9:$D$24=D15;LIGNE(Mouvements!$D$9:$D$24)-8);1)))

D'autre part, pourrais tu nous préciser ce que tu veux exactement ?

@ plus
 

Haracnico

XLDnaute Nouveau
J'aimerai que pour chaque source, la formule renvoie la dernière valeur numérique (donc sans compter les cases vide) de la colonne AD de la feuille Mouvement correspondant à la source en question. A savoir que la version que je vous ai mis en fichier joint n'est qu'un aperçu étant donnée que le tableau s'étends sur 26000 lignes. La formule de JHA ainsi que la votre fonctionne parfaitement, il faudrait cependant que les cellule vide ne soient pas pris en compte
 

JHA

XLDnaute Barbatruc
bonjour à tous,

A essayer en "H15"
Code:
=SI(ESTERREUR(GRANDE.VALEUR(SI((Mouvements!$D$9:$D$24=D15)*ESTNUM(Mouvements!$AD$9:$AD$24);LIGNE(Mouvements!$D$9:$D$24)-8);1));"pas de correspondance";INDEX(Mouvements!$AD$9:$AD$24;GRANDE.VALEUR(SI((Mouvements!$D$9:$D$24=D15)*ESTNUM(Mouvements!$AD$9:$AD$24);LIGNE(Mouvements!$D$9:$D$24)-8);1)))

Formule matricielle à copier vers le bas.

JHA
 

Discussions similaires

Réponses
10
Affichages
204