RECHERCHEV sur une plage de données variable en VBA

Fermé
VBAHell Messages postés 8 Date d'inscription lundi 15 janvier 2018 Statut Membre Dernière intervention 25 janvier 2018 - 19 janv. 2018 à 15:45
VBAHell Messages postés 8 Date d'inscription lundi 15 janvier 2018 Statut Membre Dernière intervention 25 janvier 2018 - 24 janv. 2018 à 11:12
Bonjour à tous,

J'ai un léger souci avec ma fonction recherchev

J'utilise l'enregistreur de macro, et je fais

Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select

Cependant, pour ma rechercheV le code devient :

ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-4],MLGN!R1C1:R1269C4,4,0)"

Le problème est donc cette nouvelle plage "R1C1:R1269C4" vu qu'il y avait 1269 lignes ma première fois mais désormais il y en a 1783.

Pourtant j'ai créé une variable lgc4 qui compte bien le nombre de lignes. J'ai donc tenté "R1C1:R"&lgc4&C4" mais rien à faire...

Une solution doit sûrement exister... Mais laquelle?

Merci d'avance,

1 réponse

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 337
20 janv. 2018 à 08:20
Bonjour,
A adapter
DerLig = Sheets("MLGN").[A10000].End(xlUp).Row
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-4],MLGN!R1C1:R" & DerLig & "C4,4,0)"

Cdlt
1
VBAHell Messages postés 8 Date d'inscription lundi 15 janvier 2018 Statut Membre Dernière intervention 25 janvier 2018
24 janv. 2018 à 11:12
Bonjour,

Merci beaucoup pour ton aide ! j'avais utilisé également une variable comptant le nombre de ligne, mais non associée à une feuille comme tu l'as fait avec ton "DerLig = Sheets("MLGN").[A10000].End(xlUp).Row"

Ceci devait donc être le problème.

En tout cas ta solution fonctionne, merci beaucoup !

Cordialement
0