RechercheH récalcitrante

Résolu
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

  1. 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
    1. je me suis louper j'ai pas mis le bon lien (désolé)
      http://www.cjoint.com/confirm.php?cjoint=EEwiKG2hyPW
      voilà A+
      0
    2. @AyuritenshiBonjour 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
    3. dans une macro c'est ca
      0
  2. Contributeur
    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
    1. 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
  3. 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
    1. Re,

      As tu au moins testé ma formule ?
      0
    2. Bonjour,
      je te remercie, ta formule fonctionne super.
      tu m'enlèves une épine du pied
      0
  4. 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
    1. Contributeur
      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
    2. 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