VBA Formules

kadden Messages postés 311 Statut Membre -  
GégéLAMBERT Messages postés 631 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je souhaite appliquer une formule à plusieurs Cellule grâce à VBA,

j'ai fait ceci mais ça ne marche pas :

For i = 2 To j = 13 ' De la cellule 2 à 13
Do
Range("J & i ").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(R[-7]C[-8]:R[5710]C[-8],R[-7]C[-5]:R[84]C[-3],2,FALSE)"
i = i+ 1

Mais je ne sais pas si je dois fermer la boucle après le i = i +1

et si ma boucle est correctement écrite

Merci pour vôtre aide

4 réponses

chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,

tu commences ta boucle par un for, il faut donc la terminer par un Next, donc dans ton code, change
i=i+1
par
Next
.

Cordialement.
0
kadden Messages postés 311 Statut Membre 9
 
Et si je remplace i= i+1 par Next

le code reste logique, est ce qu'il peut marcher ?..?
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour à tous

enlève aussi le "do"

les "select-selection sont inutiles. tu peux écrire
Range("J & i ").FormulaR1C1 ="=VLOOKUP(R[-7]C[-8]:R[5710]C[-8],R[-7]C[-5]:R[84]C[-3],2,FALSE)"

mais ta formule vlookup me parait fausse:

tu commences à i=2 avec dans ta formule R-7 donc 7 lignes au dessus de la ligne 2
dans rechercheV le 1° parametre est une cellule et non une plage de cellules: tu as écrit

"=VLOOKUP(R[-7]C[-8]:R[5710]C[-8],
0
kadden Messages postés 311 Statut Membre 9
 
Attention ça risque d'être facile :
peux être que c'est plus facile de la faire autrement,
j'ai mis une formule "Somme(A5:A8)" dans J1,J2,J3,J4,J5
j'ai mis toute la colonne J au Format Texte, puis j'ai tout remi au Format Standard, sauf qu'il faut
que je double clique sur chaque case de J1,J2,J3,J4,J5 pour afficher les valeurs, c'est pour ça que je voulais que la Macro
active la cellule, pour que la cellule affiche le résultat de la formule et non pas le texte de la formule

Merci de me proposer une solution, j'ai fermé le fichier et ouvert, tant que je ne double cliques sur chaque cellules, j'ai toujours le texte de la formule affichent au lieu du résultat

Merci pour vôtre aide
0
GégéLAMBERT Messages postés 631 Date d'inscription   Statut Membre Dernière intervention   10
 
Bonjour,

La formule n'est pas "Somme(A5:A8)", mais
=somme(A5:A8)

Gégé
0
GégéLAMBERT Messages postés 631 Date d'inscription   Statut Membre Dernière intervention   10
 
Bonjour

La formule n'est pas "Somme(A5:A8)" mais
=somme(A5:A8)

Gégé
0
kadden Messages postés 311 Statut Membre 9
 
Attention ça risque d'être facile :
peux être que c'est plus facile de la faire autrement,
j'ai mis une formule "Somme(A5:A8)" dans J1,J2,J3,J4,J5
j'ai mis toute la colonne J au Format Texte, puis j'ai tout remi au Format Standard, sauf qu'il faut
que je double clique sur chaque case de J1,J2,J3,J4,J5 pour afficher les valeurs, c'est pour ça que je voulais que la Macro
active la cellule, pour que la cellule affiche le résultat de la formule et non pas le texte de la formule

Merci de me proposer une solution, j'ai fermé le fichier et ouvert, tant que je ne double cliques sur chaque cellules, j'ai toujours le texte de la formule affichent au lieu du résultat

Merci pour vôtre aide
0