Bonjour, je vois plusieurs erreur dans votre code.
- Votre formule est incomplète : "=SI(B4=1;E4)" si B4=1 alors on écrite E4 ok Mais si B4 n'est pas égal à 1 ?
- par ailleurs, l'utilisation de range formula oblige la rédaction en anglais.
Pour l'utilisation d'une formule en français il faut utiliser :
Range("F4").FormulaLocal = "=Si(B4=1;E4;"")"
Enfin pour pouvoir l'appliquer sur plusieurs lignes ( jusqu'à votre variable) je ferais une boucle.
'Exemple de la ligne 4 à la variable derligne
For i=4 to derligne
Range("F" &derligne).FormulaLocal = "=Si(B" &derligne &"=1;E" &derligne &";"")"
Next