RechercheH récalcitrante

Résolu
Utilisateur anonyme -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,
je suis sur un petit tableau, et je souhaite afficher le n° de correspondance à un statut.
j'exécute la fonction RechercheH mais elle me renvoie une réponse qui est fausse.
je joins mon fichier pour être plus claire.
Le lien a été créé: https://www.cjoint.com/c/EEwgZEd2Rc3
Merci d'avance


4 réponses

Ayuritenshi Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   53
 
Salut alors j'ai fait un truc peut être que c'est pas ce que tu voulais obtenir mais j'ai essayé ;)
https://www.cjoint.com/c/EEwiweYQIza

Dis moi ce que tu en pense :)
Au fait tu peux rajouter autant de lignes que tu veux et tu peux faire une recherche partiel sur les autres critères.
A+
0
Ayuritenshi Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   53
 
je me suis louper j'ai pas mis le bon lien (désolé)
http://www.cjoint.com/confirm.php?cjoint=EEwiKG2hyPW
voilà A+
0
Utilisateur anonyme > Ayuritenshi Messages postés 281 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour et merci,
le second lien ne fonctionne pas.
et si je comprends bien, tu as utilisé les filtres avancés, mais ce n'est pas vraiment ce que je recherche
0
Ayuritenshi Messages postés 281 Date d'inscription   Statut Membre Dernière intervention   53
 
dans une macro c'est ca
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
Bonjour

vous ne pas utiliser RECHERCHEH pour ressortir une valeur qui se trouve au dessus de la ligne contenant la valeur de référence, car ce code cherche toujours dans la première ligne du champ indiqué. utilisez:
=INDEX(A2:H2;EQUIV(B13;A3:H3;0))
et pour éviter un affichage d'erreur quand B13 est vide:
=SIERREUR(INDEX(A2:H2;EQUIV(B13;A3:H3;0));"")

crdlmnt


Errare humanum est, perseverare diabolicum
0
Utilisateur anonyme
 
Merci pour votre réponse, le souci c'est que cette formule ne fonctionne que pour la ligne 3, si ma donnée se trouve sur la ligne 4 ça ne fonctionne plus
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Bonjour le fil,

Bonjour Vaucluse, plus rapide mais si tu cherches une donnée d'une ligne différente tu es dans le marc, de café bien sur

regarde comme cela

=INDEX(A2:H2;SOMMEPROD((A2:H5=B13)*COLONNE(A2:H5)))

je te conseille de nommer ta matrice A2:H5 nommée List, dans ce cas la formule devient

=INDEX(A2:H2;SOMMEPROD((List=B13)*COLONNE(List)))

l'intérêt de nommer ta matrice facilite et simplifie la formule si tu souhaites l'utiliser sur un onglet différent
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

As tu au moins testé ma formule ?
0
Utilisateur anonyme
 
Bonjour,
je te remercie, ta formule fonctionne super.
tu m'enlèves une épine du pied
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Re,

alors je passe le statut en résolu et pour ceux qui voudrait chercher la valeur verticale

=INDEX(A1:A5;SOMMEPROD((A2:H5=B13)*LIGNE(A2:H5)))
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
salut Mike
suis d'accord pour nommer le champ, mais ta logique voudrait alors que tu nommes aussi A1:A5.
et je répugne un peu à utiliser SOMMEPROD quand on peut faire autrement, vu que le code est assez gourmand
De plus il ne faut pas, pour utiliser cette option, que tu ais le code cherché sur plusieurs lignes de A2 à H5.
Donc, les deux solutions peuvent être ou ne pas être avantageuses selon les cas;
Bien amicalement
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Salut l'ami,

Oui bien sur pour nommer toute les plages ainsi que SOMMEPROD est très gourmande en ressource, mais lorsque on a plusieurs lignes à traiter je n'ai pas trouvé mieux et tu as tout à fait raison sur le fait que si tu as dans la colonne plusieurs critères identiques le résultat est multiplié, dans ce cas il faudrait compléter la formule mais toujours gourmande en ressource cela demande réflexion
cordialement
0