[EXCEL] Problème méthode RECHERCHEV

Résolu/Fermé
Fredi - 27 mars 2008 à 21:41
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 28 mars 2008 à 15:56
Bonjour à tous !

Je me permets de vous solliciter car en effet j'ai un problème que je n'arrive pas à résoudre sur Excel :s.

Je souhaiterais, en effet, utiliser un =recherchev() sur un tableau pour une tâche spécifique.

Pour mieux comprendre :

=RECHERCHEV("1";G1:J23;"2")

Ce que l'on comprend à partir de la fonction :
je recherche l'entrée où il existe la valeur 1 dans le tableau G1:J23 et j'affiche le contenu de la cellule situé en colonne 2 et en ligne relative à mon 1.

Il faut savoir que dans mon tableau j'ai plusieurs 1 et l'objectif est de pouvoir récuperer les valeurs et effectuer des calculs sachant qu'un recherchev() se limite qu'à une seule cellule (d'après ce que j'ai pu constater et c'est bien pour ça que je demande votre aide :)).
Auriez-vous par hasard une solution à partir de cette fonction ou une alternative ? Je voudrais faire cela simplement et surtout rapidement sans forcément développer en VB ou utiliser un tableau croisé dynamique.

Je vous remercie d'avance ;).

Fredi.
A voir également:

2 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
27 mars 2008 à 22:30
bonjour

=RECHERCHEV("1";G1:J23;"2")

Pour pinailler un peu, ta formule serait plutôt : =RECHERCHEV(1;G1:H23;2;0)

Pour récupérer toutes les valeurs "1" de ton tableau, c'est possible avec des combinaisons de fonctions mais cela ne va pas être rapide à adapter car ce sont des constructions assez complexes.

Avec cette formule, mise en D2 puis recopiée vers le bas, cela devrait fonctionner.
Pour mettre la formule ailleurs, il faut changer D$2:D2 par la cellule de départ.
=SI(NB.SI($G$1:$G$23;"1")<LIGNES(D$2:D2);"";INDEX($H$1:$H$23;PETITE.VALEUR(SI($G$1:$G$23=1; LIGNE($G$1:$G$23));LIGNES(D$2:D2))))

formule matricielle à valider par crtl+entrée+majuscule simultanées

attention à toutes les positions du $
0
Salut gbinforme !

Merci pour ta réponse entre temps j'ai réussi à trouver une solution. Je suis partis sur un SOMMEPROD qui m'a permis d'additionner le nombre de cellule contenant "1" :

=SOMMEPROD((Tableau!$C$7:$C$320=$A5)*(Tableau!$B$7:$B$320=B$3)*(Tableau!$H$7:$H$320=1))

Merci en tout cas pour l'aide :).

Fredi.
0
Bonjour

Serait-il possible de me transmettre un explicatif pour l'utilisation de la recherche "v" car j ai un TE qui approche et je voudrais pouvoir encore m'entrainer...!!!!

En éspèrant que quelqu'un me prêtera un petit moment de son temps pour m'aider.

D'avance merci


Tigrou
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
28 mars 2008 à 15:56
Bonjour Tigrou
1° pour vous aider, vous pouvez utilisez l'aide de Excel:
Soir la procèdure:
Sélectionnez votre cellule,cliquez sur insertion dans la barre des taches et ensuite sur fonction. Un menu s"affiche où vous trouverez toutes les explications et l'aide à la mise en place pour toutes les fonctions prédéfinies disponibles.

Ceci dit pour la RECHERCHEV que vous pouvez placer par exemple en A1 pour affichage du résultat
=RECHERCHEV(A2;B2:E100;2;0)
dans cette formule:
A2;représente rapporte la valeur que vous voulez rechercher.
B2:E100; définit le champ dans lequel la fonction va rechercher la valeur de A2
2; définit la colonne du champ dans laquelle il faut trouver la valeur correspondante de celle trouvée en 1° colonne
0) définit le type de recherche que vous souhaitez, dans ce cas, la valeur exacte seulement et pas une valeur proche. (pour plus amples info sur ce point, voir aide excel plus haut)
Ainsi donc, la formule telle qu'elle est énnoncée dans mon exemple:
_1°_va rechercher entre B2 et B100(toujours 1° colonne du champ) la valeur égale à celle de A2(num ou texte sous réserve de conformité des écritures)
_2° _va rechercher dans la colonne C(2° du champ) la valeur de la cellule sur la ligne trouvée
_3° _va renvoyer cette valeur en A1
Si vous remplacez le 2; par 3; la formule vous ressortira la valeur de la colonne D sur la ligne, et ainsi de suite
Bon courage, bon examen
CDLMNT
PS: à noter que cette formule s'arrète bien entendu à la première valeur trouvée dans la colonne de recherche et ne détectera pas deux valeurs identiques
0