Etirer fonction recherchev sur VBA

laura_92 -  
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Toute nouvelle sur VBA, je rencontre quelques difficulties ...
J'ai realizer une recherchev et je voudrais l'étirer mais ça ne marche pas.
Est ce que quelqu'un aurait une idée ?

Je vous met le code ci dessous



Sub Macro4()
Range("G2").Select
ActiveCell = "=VLOOKUP(RC[-6],Feuil2!R6C5:R26C16,7,FALSE)"
Range("G2").Select
Dim DernLigne As Long
DernLigne = Range("G" & Rows.Count).End(xlUp).Row
Range("G2").AutoFill Destination:=Range("G2:G" & DernLigne)
End Sub


2 réponses

Bruce Willix Messages postés 11966 Date d'inscription   Statut Contributeur Dernière intervention   2 594
 
Bonjour,

Le VBA c'est du code. On ne peut pas "étirer", il faut passer par des boucles, ou des IF/THEN, WHILE/DO etc...

Que veux tu faire ? Recopier ta formule de vlookup autant de fois qu'il y a d'éléments à chercher ?
0
laura_92
 
Oui.
Le code marche et me donne bien le résultat que je cherche.
Je voudrais appliquer la meme formule pour toutes les lignes en dessous. C'est ce que j'ai essayé de faire avec " Range("G2").AutoFill Destination:=Range("G2:G" & DernLigne) "
Mais apparement je ne m'y prends pas correctement ...
Merci d'avane !!
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Bonjour,
Simplement :
Sub Macro4()
Dim DernLigne As Long
DernLigne = Range("G" & Rows.Count).End(xlUp).Row
Range("G2:G" & DernLigne).FormulaR1C1 = "=VLOOKUP(RC[-6],Feuil2!R6C5:R26C16,7,FALSE)"
End Sub

0
laura_92
 
ça ne fonctionne pas.
Comme précedemment, la formule s'applique correctement pour la cellule G2. Mais cette fois ci j'ai aussi un #N/A en G1
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Pour que ça fonctionne, il faut que la colonne G ne soit pas vide !
si elle est vide, elle ne peut pas servir à mesurer la dimension du tableau avec DernLigne = Range("G" & Rows.Count).End(xlUp).Row
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
PS : si tu as #NA en G1 la formule à été appliquée de G1 à G2 et donc ça fonctionne !
0