recherchev et macro

T

toubib

Guest
Bonjourà tous,

chaque jour apporte son lot de question ;)
j'ai des vlookup dans ma macro et j'ai copié le code bêtement (je suis pas une bête en vb :s) en modifiant de +1 la colonne de résultat à chaque fois donc ca donne ça:

ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
'=VLOOKUP(''données'',R6C1:R500C69,12,0)'
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
'=VLOOKUP(''données'',R6C1:R500C69,13,0)'
ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
'=VLOOKUP(''données'',R6C1:R500C69,14,0)'

et ca va comme ça jusqu'à 57 :s

n'y aurait il pas une solution plus courte et simple pour remplacer tout ça?
 

Bebere

XLDnaute Barbatruc
bonjour Toubib, le Forum

à la place de 'données',il devrait y avoir une référence égale
à la 1ère colonne de la plage,içi $A6

Sub e()
For l = 1 To 57
Range('E' & l).Formula = _
'=VLOOKUP(''données'',$A$6:$BQ$500,12,0)'
Next l
End Sub
à la place de 'données',il devrait y avoir une référence égale
à la 1ère colonne de la plage,içi $A6
Sub e()
For l = 1 To 57
Range('E' & l).Formula = _
'=VLOOKUP($A' & l + 5 & ',$A$6:$BQ$500,12,0)'
Next l
End Sub

à bientôt
 
B

bebere

Guest
re
vlookup=recherche verticale
hlookup=recherche horizontale
donne plus de détails
nom feuille et plage ou faire la recherche
ds la feuille ou sera le résultat
la colonne ou est ce que l'on recherche,etc..
à+ :)
 
T

toubib

Guest
nom de la feuille: données (j'avais mis données dans le vlookup pour exemple)
plage: a6:bq500
feuille du résultat: données
la colonne ou l'on recherche c'est justement le truc je veux qu'à chaque fois qu'il change de case et donc à chaque nouvelle vlookup, il ajoute un à la colonne du résultat
ca donnerait un truc du genre

ActiveCell.Offset(0, 1).Select
ActiveCell.FormulaR1C1 = _
'=VLOOKUP(RC1,R6C1:R500C69,n+1,0)' pour dire que par rapport à la précédente vlookup on augmente de 1 la colonne ou se trouve le résultat.

voila :)
 

Bebere

XLDnaute Barbatruc
re

j'ai essayé le code qui suit
si tu veux réinscrire une partie du tableau à un autre emplacement
le code qui suit le fais,à toi d'adapter
Sub e()
For L = 1 To 3
For C = 1 To 3
Cells(L, C + 4).Formula = _
'=VLOOKUP($A' & L & ',$A$1:$C$10,' & C & ',0)'
Next C
Next L
End Sub
à+
 

Discussions similaires

Réponses
2
Affichages
412

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS