Problème résultat après utilisation FormulaR1C1

Bonjour,

plutôt novice en VBA, je rencontre un problème dans l'utilisation de la fonction FormulaR1C1. Mon but est d'insérer une formule dans une cellule qui reprend la valeur d'autres cellules, y compris dans d'autres feuilles. Mon code est le suivant :

Dim i As Integer For i = 9 To 38

 Worksheets("Février").Cells(i, 6).FormulaR1C1 = "=R[-" & i & "]C[-4]-R[-" & i & "]C[-5]-Janvier!R[-" & i & "]C[-6]"

next

Une fois exécuté, le résultat obtenu est correct, mais pas "dynamique", c'est à dire que si je change la valeur d'une des cellules impliquées (dans ma feuille "Janvier" par exemple), le résultat reste inchangé.

De plus, la formule insérée ressemble à ça : =B1048576-A1048576-Janvier!XFD1048576

Merci d'avance pour votre aide.

Bonjour,

Si vous mettez votre formule manuellement en F9 de Février, on aurait ceci ? --> =B9-A9-Janvier!F9

Crdlt


Edit : ce ne serait pas plutôt ceci que vous voulez -->

Worksheets("Février").Cells(i, 6).FormulaR1C1 = "=RC[-4]-RC[-5]-Janvier!RC"

Si ok -->

Bonjour,

ce serait plutôt " =D9-E9-Janvier!F9

En utilisant votre proposition et en modifiant en fonction de ce que je voulais, ça marche parfaitement maintenant !! Merci beaucoup !!

Pour ma culture, pourriez-vous juste m'expliquer cette syntaxe en "RC" que je connais pas ? ça m'évitera de bloquer la prochaine fois !

Merci encore

Pour ma culture, pourriez-vous juste m'expliquer cette syntaxe en "RC"

R = Row pour Ligne
C = column pour colonne

Donc si vous mettez R0C5 (ou RC5), vous ne changez pas de ligne mais vous prenez la valeur 5 colonnes plus loin et inversément si vous mettez R5C0 (ou R5C).

Dans votre cas, Excel voit i = 9 et colonne = 6, du coup le fait de mettre RC dans la formule donne la valeur de i à R et 6 à C (colonne F).
Si vous aviez mis R5C, le code vous aurait donné R = i + 5 (donc 14) et C = 6 (donc colonne F)

Si besoin de plus d'explications dites moi

Cordialement

Parfaitement clair pour moi merci !

Rechercher des sujets similaires à "probleme resultat utilisation formular1c1"