Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Recherchev dans macro avec plage variable

  • Initiateur de la discussion Initiateur de la discussion Boubas1
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Boubas1

XLDnaute Occasionnel
bonjour,
j'ai 1 recherche v avec 1 plage source qui peut varier en nombre de lignes. Aujourd'hui, j'en ai 473 ligne mais demain je pourrai tres bien en avoir 500.
Voici mon code actuel:Range("K2").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],'409321'!R1C1:R473C10,9,FALSE)"
Quel code peut prendre 1 nombre de lignes qui peut varier . Merci
 
Re : Recherchev dans macro avec plage variable

Bonsoir Boubas1,

Tout dépend de ce que vous voulez faire et de la configuration de la plage de recherche...

Par exemple vous pouvez utliser OFFSET (DECALER) et COUNTA (NBVAL) dans la formule :

Code:
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],OFFSET('409321'!R1C1:R1C10,,,COUNTA('409321'!C1)),9,FALSE)"

Cela suppose a priori qu'en colonne A il n'y ait pas de cellules vides entre les cellules non vides.

A+
 
Re : Recherchev dans macro avec plage variable

bonsoir boubas, job75,

autre possibilité : définir une variable stockant le n° de la dernière ligne du tableau dans laquelle tu effectues ta recherche et integrer cette variable dans la formule :

Code:
lig = Sheets("409321").[I65536].End(xlUp).Row
Range("K2").Select
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],'409321'!R1C1:R" & lig & "C10,9,FALSE)"

EDIT : bonsoir vbacrumble (boubas c'est enervant les posts multiples!!
A+
 
Re : Recherchev dans macro avec plage variable

Salut vbacrumble, ledzepfred,

Pourquoi un 2ème fil, Boubas1 ?[/url]

En fait celui-ci est le 1er fil, qui était resté sans réponse. Désolé, je suis intervenu car je n'avais pas vu qu'il y en avait un second...

J'ai déjà ralé plusieurs fois sur les fils qui répètent le même sujet, j'arrête un peu.

A+
 
Re : Recherchev dans macro avec plage variable

re job75,

c'est pas ta faute, Boubas a créé deux fois la même discussion et c'est pas bien. A force de raler, les forumeurs vont finir par comprendre qu'on aime pas les posts multiples, non!!!

A+
 
Re : Recherchev dans macro avec plage variable

Bonsoir,

Voici mon code final qui marche bien:
Derlign = Range("'409321'!A65000").End(xlUp).Row
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],'409321'!R1C1:R[" & Derlign & "]C10,9,FALSE)". Merci à vous.

Nb: Désolé pour le double fil, je suis un peu impatient
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
13
Affichages
855
J
  • Question Question
Microsoft 365 Formules
Réponses
2
Affichages
787
J
Réponses
7
Affichages
1 K
L
Réponses
9
Affichages
1 K
A
Réponses
2
Affichages
1 K
AntoineLTO
A
M
Réponses
4
Affichages
2 K
ManOfCatz
M
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…