Recherche dans un tableau

  • Initiateur de la discussion anber
  • Date de début
A

anber

Guest
Bonjour le forum,

Je recherche un code pour trouver une valeur dans un tableau en fonction de plusieurs critères

Voir l'exemple


Merci
 
A

anber

Guest
Avec l'exemple c'est mieux ..... [file name=valeur_tableau.zip size=2754]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/valeur_tableau.zip[/file]
 

Pièces jointes

  • valeur_tableau.zip
    2.7 KB · Affichages: 12

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

regarde si cela te convient

Bon WE [file name=valeurtableau.zip size=5420]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/valeurtableau.zip[/file]
 

Pièces jointes

  • valeurtableau.zip
    5.3 KB · Affichages: 8

Sylvie

XLDnaute Accro
Bonjour Anber, Pascal76, le Forum

j'en étais au même stade que toi Pascal mais Anber veut renvoyer la valeur supérieure de la ligne ou de la colonne si elle n'existe pas dans la tableau. Or Index Equiv nous renvoie la veleur inférieure ..
Et là je sèche !

Sylvie
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Oups

J'avais pas vu le cas 2

Même formule avec un ajout mais l faut trier le ta bleau dans l'ordre décroissant (je l'ai fait mais bien sûr je n'ai pas changé les valeurs à l'interieur)

[file name=valeurtableau_20050611084243.zip size=2801]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/valeurtableau_20050611084243.zip[/file]
 

Pièces jointes

  • valeurtableau_20050611084243.zip
    2.7 KB · Affichages: 8

JeanMarie

XLDnaute Barbatruc
Bonjour Sykvie, Anber, Pascal

Sans besoin de changer l'ordre des valeurs.

Il y a cette formule, les valeurs des entêtes de plages A2:A7 et B1:G1 peuvent être dans un autre quelconque, mais inconvénient, il faut quelles soient de valeurs numériques.
=INDEX(B2:G7;EQUIV(1;FREQUENCE(D13;A2:A7);0);EQUIV(1;FREQUENCE(E13;B1:G1);0))

Autre formle en matricielle, à valider par les touches Ctrl+Shift+Entrer
=INDEX(A1:G7;MIN(SI(A2:A7>=D13;LIGNE(A2:A7)));MIN(SI(B1:G1>=E13;COLONNE(B1:G1))))

@+Jean-Marie

Message édité par: JeanMarie, à: 11/06/2005 12:10
 

anber

XLDnaute Occasionnel
Bonjour Sylvie, Jean-Marie, Pascal

Voici une autre solution que m'a communiqué Minick qui fonctionne dans tous les cas


=INDEX(A1:G7;EQUIV(GRANDE.VALEUR(A1:A7;NB.SI(A1:A7;'>='&D13));A1:A7;1);EQUIV(GRANDE.VALEUR(A1:G1;NB.SI(A1:G1;'>='&E13));A1:G1;1))


Merci à tous
 
J

JJ59

Guest
RE

J'ai oublié le fichier

JJ59 [file name=valeurtableau2.zip size=3039]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/valeurtableau2.zip[/file]
 

Pièces jointes

  • valeurtableau2.zip
    3 KB · Affichages: 13

Sylvie

XLDnaute Accro
Bonjour Anber, Jj59, le Fil, le Forum

j'ai eu beau décortiquer la solution de jj59 et je ne vois pas de différences avec la solution de pascal76 qui classait également les étiquettes des lignes et colonnes par ordre décroissant.
Y a t'il des différences qui m'auraient échappées ?

Bon Dimanche à tous
Sylvie
 
J

JJ59

Guest
Bonjour Sylvie40, Pascal76,Anber

Je viens de regarder la formule de Pascal76 et je suis de votre avis
pas de diffèrence signicative.
Peut-être le fait que les valeurs du tableau n'ont pas été modifiées a pu tromper Anber.
Pascal76
Je n'avais pas vu ta solution.
La prochaine fois je ferai plus attention.

Bon dimanche à tous

JJ59
 

Discussions similaires

Réponses
40
Affichages
1 K

Statistiques des forums

Discussions
312 559
Messages
2 089 601
Membres
104 222
dernier inscrit
mouhim