Rechercher dans un tableau

Résolu
Bonjour,

J'ai un tableau contenant des dates et des valeurs associées. J'aimerais trouver une fonction qui me permette de récupérer la dernière date à laquelle apparaît une certaine valeur.

Par exemple :
col A col B
mars K209
avril K209
mai K212

Si je cherche K209, je voudrais que la formule me renvoie "avril".

Merci de votre aide

6 réponses

  1. fais une recherche à propos de la commande VLOOKUP c'est la commande dont tu as besoin.
    0
    1. Je vais regarder, merci
      0
      1. Voila ce que j'ai fait, ca ne fonctionne pas pour le moment.

        J'ai mes dates et valeurs (K212/K209) dans la feuilles "Données" respectivement colonnes S et T. La valeur que je cherche se trouve dans la case K6.

        J'ai mis la formule suivante :
        =RECHERCHEV(K6;Données!S6:T12;1)
        0
        1. Si je comprends bien, il faut que la valeur que je cherche (donc K212 ou K209) se trouve dans ma première colonne de la plage dans laquelle je cherche mes données... Malheureusement ce n'est pas le cas ici.
          0
      2. Après avoir testé la formule et essayé dans tous les sens, j'ai déplacé ma colonne avec les valeurs K212/K209 et la formule RECHERCHEV fonctionne. Cependant, elle me renvoie la date de la 1ère valeur trouvée dans l'ordre du tableau. Les valeurs apparaissent de nombreuses fois dans le tableau et je veux récupérer la date la plus récente donc correspondant à la dernière valeur trouvée dans le tableau.

        Pouvez-vous m'indiquer si c'est possible et comment ?
        Merci
        0
        1. Bonjour,

          en supposant que ton tableau se trouve dans la plage A2:B50 et colonne A tu as les mois et en colonne B les références
          en cellule E2 la référence à rechercher exemple K209

          colle cette formule matricielle qu'il faudra valider en cliquant en même temps sur les 3 touches du clavier Ctrl, Shift et Entrée, si tu fais bien la formule se placera entre accolades {}
          =SI(LIGNES($1:1)<=NB.SI(B2:B50;$E$2);INDEX(A2:A50;GRANDE.VALEUR(SI(B2:B50=$E$2;LIGNE(INDIRECT("1:"&LIGNES(B2:B50))));LIGNES($1:1)));"")

          tu aurais intérêt à nommer tes plages, exemple la plage B2:B50 nommée code et la plage A2:A50 nommée result permettrait à utiliser la formule sur toute les onglets

          =SI(LIGNES($1:1)<=NB.SI(code;$E$2);INDEX(result;GRANDE.VALEUR(SI(code=$E$2;LIGNE(INDIRECT("1:"&LIGNES(code))));LIGNES($1:1)));"")

          l'important est que ta formule une fois validée se place entre {}
          0
          1. Merci pour cette réponse !

            J'ai en effet trouvé une formule matricielle qui fonctionne :

            =SI(K6<>"";MAX(SI(Données!T6:T150=K6;Données!S6:S150;""));"")

            où T est ma colonne avec les références et S celle avec les dates. K6 indique la référence à chercher.

            Je vais peut-être essayer de créer des noms pour ces plages de données.
            0