Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

probleme avec FormulaR1C1

Aucune réponse
Avatar
louis-lambert
Bonjour,
je tente d'ecrire un programme de calcul en vba, et je suis tombé plusieurs fois sur la même erreur dans le calcul.
voilà un extrait du code :

With [profil_long].Cells(1, 4)
.FormulaR1C1 = "=IF(RC[-1]<>"""",IF(RC[-1]=2," & h2 & "," & h1 & "),"""")"
.AutoFill Destination:=Range([profil_long].Cells(1, 4), [profil_long].Cells(3 * [Nb_de_travées].Value + 1, 4)), Type:=xlFillValues
End With

la plage [profil_long] correspond aux cellules (=DEF_section!$A$136:$D$166).
la plage de [Nb_de_travées] ne contient qu'une cellule dont la valeur est 6.
le code fonctionne bien, mais le problème est qu'après execution, la formule ecrite par le formulaR1C1 donne :
=SI(IV1<>"";SI(IV1=2;350;800);"")
alors qu'elle devrait donner :
=SI(C136<>"";SI(C136=2;350;800);"")
j'ai l'impression que le code confond les references relatives et absolues.
ce qui est particulierement étrange c'est que le code me donnait les bons resultats aux premiers essais, et ne marche plus maintenant.
d'où peut venir cette erreur? j'ai vraiment du mal à comprendre là. est ce qu'il y a une option à activer pour forcer l'application formulaR1C1 à fonctionner en reference relative?
merci à vous, j'espère que vous saurez me répondre

Réponses