Bonjour Sabine, Marco, Yves, le Forum
En fait si on fait écrire par VBA une formule, elle devra être en Anglais. Il suffit d'écrire une Formule pendant que l'enregistreur de Macro tourne pour s'en convaincre et aussi pour avoir la traduction gratuitement.
La propriété 'FormulaR1C1' retournée par l'enregistreur est par contre à mes yeux très peu facile d'emploi, obligenat une gymnastique de calculs en déplacement Row/Column.
Je lui préfère de loin la Propriété 'Formula' qui elle, accepte des adresse référence de Range 'Classiques' (A1:A3)
On préfèrera écrire :
Range('D1').Formula = '=Sum(A1:A3)'
Que :
Range('D1').Select
ActiveCell.FormulaR1C1 = '=SUM(RC[-3]:RC[-1])'
Une autre Propriété est FormulaLocal qui permet de saisir la Formule en language local de la machine.
Pour le reste de la question, je vois ceci comme celà :
Sub Calcul()
Dim L As Integer
L = 5
Do While Range('A' & L).Value <> ''
Range('AA' & L).Formula = '=Sum(AB' & L & '+AD' & L & '+AF' & L & '+AH' & L & ')'
L = L + 1
Loop
End Sub
Bonne Soirée
[ol]@+Thierry[/ol]
EDITION !!!
Sorry no refresh ! (Phone Call)
Bonsoir Michel_m et re l'équipe du Fil
Alors comme ça on 's'abonne' Michel (
tant qu'on s'abandonne pas LOL)
Message édité par: _Thierry, à: 13/09/2005 19:02