Recherche dans une matrice et affichage de l'équivalent d'une colonne.

azaghar27

XLDnaute Nouveau
Bonjour,

J'ai un problème de recherche de l'équivalent d'une valeur dans une matrice. je voudrai afficher le statut de la commande (ex. COM120012) dans la feuille "statut commande". Il va falloir rechercher cette commande dans la matrice des commandes dans la feuille "commande" (semaine 1 semaine 2 et semaine 3) et afficher le statut équivalent.

Merci
 

Pièces jointes

  • commande.xls
    23 KB · Affichages: 89
  • commande.xls
    23 KB · Affichages: 90
  • commande.xls
    23 KB · Affichages: 93
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Bonjour,

Chaque commande est présente plusieurs fois dans ton tableau, dans des sites différents et à des stades d'avancement différents.

Comment faut-il lire ton tableau ?

Et quel est le résultat attendu ?

Il serait intéressant sur ce point de nous rejoindre ton fichier en y indiquant manuellement le résultat attendu

A te (re)lire

@+

Edit : Salut Job :)

@+
 

azaghar27

XLDnaute Nouveau
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Bonsoir,

Désolé le n° de commande ne devait pas se répéter.

ci-joint le nouveau fichier

Merci
 

Pièces jointes

  • commande.xls
    23.5 KB · Affichages: 79
  • commande.xls
    23.5 KB · Affichages: 83
  • commande.xls
    23.5 KB · Affichages: 80

Tibo

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

re,

Une tentative avec cette formule en E8 :

Code:
=INDEX(commande!$G$1:$G$17;SOMMEPROD((commande!$D$7:$F$17='statut commande'!$D8)
*LIGNE(commande!$D$7:$D$17)))

à recopier vers le bas

@+
 

azaghar27

XLDnaute Nouveau
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Le formule affiche un statut même pour des commandes qui ne figurent pas dans la feuille "commande"! si jamais la commande ne figure pas dans la feuille "commande" je voudrai bien qu'il m'affiche un message personnalisé (ex. commande inexistante).

Merci
 

job75

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Re,

Une autre solution, assez lourde, en E8 :

Code:
=SI(NB.SI(commande!D$7:D$17;D8);RECHERCHEV(D8;commande!D$7:G$17;4;0);SI(NB.SI(commande!E$7:E$17;D8);RECHERCHEV(D8;commande!E$7:G$17;3;0);SI(NB.SI(commande!F$7:F$17;D8);RECHERCHEV(D8;commande!F$7:G$17;2;0);"commande inexistante")))

Edit : remplacé "" par "commande inexistante" comme vous le demandez

A+
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

re,

Correction de la formule :

Code:
=SI(NB.SI(commande!$D$7:$F$17;D8)=0;"commande inexistante";INDEX(commande!
$G$1:$G$17;SOMMEPROD((commande!$D$7:$F$17='statut commande'!$D8)*LIGNE(
commande!$D$7:$D$17))))

L'erreur a été pour moi l'occasion de découvrir que la fonction INDEX acceptait le paramètre 0 comme n° de ligne :confused:. Je ne sais pas si c'est d'une grande portée .... mais je ne m'en étais jamais aperçu.

@+
 

david84

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Bonsoir à tous:)
L'erreur a été pour moi l'occasion de découvrir que la fonction INDEX acceptait le paramètre 0 comme n° de ligne
Que veux-tu dire par-là Tibo, de quel paramètre 0 parles-tu dans ta formule ?
Le seul "0" que je vois est lié à nb.si...mais je dois pas comprendre ce que tu évoques:confused:.
A+
 

job75

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Bonsoir David,

Mets des valeurs dans la plage A3:A6.

Pour les récupérer, on peut utiliser =INDEX(A3:A6;1) =INDEX(A3:A6;2) etc....

Mais Tibo s'est rendu compte que =INDEX(A3:A6;0) donne la même chose que =INDEX(A3:A6;n) n étant le n° de la ligne où est entrée la formule... (mais #VALEUR! en dehors)

A+
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Recherche dans une matrice et affichage de l'équivalent d'une colonne.

Re
Merci Job, j'ai compris;).
Tiré de l'aide d'Excel :
Si vous spécifiez la valeur 0 (zéro) pour l’argument no_lig ou no_col, la fonction INDEX renvoie respectivement la matrice des valeurs de la colonne ou de la ligne entière.
Index accepte même
Code:
=INDEX(A3:A6;)
et
Code:
=INDEX($A$3:$A$6;0)
ou
Code:
=INDEX($A$3:$A$6;)
doivent apparemment être validés matriciellement pour être acceptés (ce qui me semble logique puisque, du fait du 0 ou du "", il prend l'ensemble de la plage en compte).
A+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 974
Membres
103 076
dernier inscrit
LoneWolf90