Bonjour,
Je rédige une MACRO.
Je souhaite automatiser une RECHERCHEV d'un fichier à un autre.

Une donnée du fichier F1 doit être rapatriée dans le fichier F2.

Nécessairement, d'un lancement à l'autre, la MACRO sera confrontée à des fichiers différents donc à des nombres de lignes différents.

Préalable :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Windows("F1.xlsx").Activate
derniereLigneF1 = Cells(Rows.Count, 1).End(xlUp).Row
 
Windows("F2.xlsx").Activate
derniereLigneF2 = Cells(Rows.Count, 1).End(xlUp).Row
Puis :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Windows("F2.xlsx").Activate
 
Range("B2").Select
 
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-1],[F1.xlsx]Feuil1!R1:R" & derniereLigneF1 & ",1,FALSE)"
Selection.AutoFill Destination:=Range("B2:B" & derniereLigneF2)

La MACRO plante avec cette notation & derniereLigneF1 &.
Effectivement, si le numéro de dernière ligne était inscrite, la MACRO ne planterait pas, mais ce n'est plus dynamique.

Comment rendre dynamique l'instruction VLOOKUP ?

Merci par avance pour votre aide.