Trou de mémoire Excel RechercheV + resultat cellule [Résolu]

Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
- - Dernière réponse : cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
- 27 juin 2013 à 14:40
Bonjour à tous.

Je ne me remémore plus la syntaxe pour fixer la plage de rechercheV avec un N°de ligne qui est le résultat d'une formule dans une cellule ...

A1 = résultat de formule (p.ex.= 10)
A2 = RechercheV(B1;C1:F x ;8;FAUX)
x est la valeur en A1, donc ici, il faut "construire" l'équivalent de :A2 = RechercheV(B1;C1:F10;8;FAUX)
Evidemment, A2 = RechercheV(B1;C1:F&A1;8;FAUX)n'est pas correct!

Une question que je ne suis pas arrivé à formuler correctement pour trouver sur le net.

Merci à une âme charitable

Rataxes64
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
3
Merci
Non, avec "C1:F" ça ne peut pas marcher dans rechercheV

Je me souviens qu'l m'avait fallu passer par une cellule matricielle.


Et je viens de retrouver!
en A1 ("matricielle")
= { "F" & MAX(NON(ESTVIDE(Data!FA84:FA65536))*LIGNE(Data!FA84:FA65536))}
en A2
=RECHERCHEV(B1;C1:INDIRECT(A1);3;FAUX)

En fait, il fallait concaténer la lettre DANS la formule matricielle de A1, et non dans A2, puis utiliser INDIRECT dans A2.

Je ne suis jamais arrivé à me passer de cette cellule "matricielle" pour n'avoir qu'une seule formule. Mais si tu as la solution, je suis preneur!

En attendant, merci, tu m'as bien aidé.
Rataxes64

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 204 internautes nous ont dit merci ce mois-ci

Commenter la réponse de CerberusPau
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Bonjour,

Fais une recherche dans ton aide à la rubrique Recherche et référence. Il y est indiqué :
RECHERCHEV(valeur_cherchée, table_matrice, no_index_col, [valeur_proche])

Autre méthode, tape =RECHERCHEV dans ta barre de formule, la formule est indiquée dans une "info-bulle", passe la souris dessus et clique sur le lien RECHERCHEV

Tu aurais dû commencé par là avant de poser la question... ceci dit sans méchanceté aucune.

Cheyenne
Commenter la réponse de cs_cheyenne
Messages postés
377
Date d'inscription
lundi 3 avril 2006
Statut
Membre
Dernière intervention
22 août 2018
0
Merci
C'est gentil, Cheyenne, mais l'aide n'évoque pas ma situation, à savoir former la plage de recherche avec un N° de ligne qui est le résultat d'une cellule.
Pour info, ce résultat est donné par la formule matricielle en A1 ={MAX(NON(ESTVIDE(Data!FA84:FA65536))*LIGNE(Data!FA84:FA65536))}, qui renvoi le N° de la dernière ligne non vide de la plage qui m'intéresse.
J'ai essayé ADRESSE, INDEX, DECALER, INDIRECT, etc. sans succès.

Le pire c'est que je l'ai déjà fait et que je n'arrive pas à m'en souvenir!


Rataxes64
Commenter la réponse de CerberusPau
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Re,

Si je comprends bien la formule que tu voudrais avoir serait :
=RECHERCHEV(B1;C1:F& n° ligne indiqué dans cellule A1;8;FAUX)

Dans ce cas pourquoi ne pas mettre la formule à la place de A1 ?
=RECHERCHEV(B1;"C1:F"& {MAX(NON(ESTVIDE(Data!FA84:FA65536))*LIGNE(Data!FA84:FA65536);8;FAUX)


Cheyenne
Commenter la réponse de cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
0
Merci
Bonjour,

De rien, c'était avec plaisir.
Mais en fait je n'ai pas fait grand chose sinon que de te mettre sur la piste de la concaténation.
A moins qu'un des développeur de ce forum vienne me contredire, hélas, je ne vois pas comment, dans ton cas, se passer de la notation matricielle.

Attention tu as posté dans la section VB.NET et VB 2005.
Le pire c'est que je l'ai déjà fait et que je n'arrive pas à m'en souvenir!

Ah, il ne faudrait pas vieillir

Bonne journée,

Cheyenne
Commenter la réponse de cs_cheyenne