Bonjour à tous,
Je souhaite mettre à jour la formule d'une case à chaque fois que je lance la macro suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Sub MaJ()
Dim CAHIER As Workbook
Dim source As Worksheet
Dim cible As Worksheet
Dim ligne As Integer
Dim Val1 As Variant
Dim Val2 As Variant
Dim Val3 As Variant
Dim Val4 As Variant
    
    Set CAHIER = ActiveWorkbook
    Set cible = CAHIER.Worksheets("Capitalisation")
    Set source = CAHIER.Worksheets("Temps calcul")
    
Worksheets("Capitalisation").Activate

For ligne = 2 To 10000
    If Cells(ligne, 2).Value <> "" Then
    GoTo suite
    Else
        Rows(ligne & ":" & ligne).Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        cible.Cells(ligne, 2).Value = source.Cells(13, 2).Value
        cible.Cells(ligne, 3).Value = source.Cells(8, 6).Value
        cible.Cells(ligne, 4).Value = 1
        cible.Cells(ligne, 5).Value = source.Cells(11, 4).Value
        cible.Cells(ligne, 6).Value = source.Cells(11, 5).Value
        cible.Cells(ligne, 7).Value = source.Cells(11, 6).Value
        cible.Cells(ligne, 8).Value = source.Cells(11, 7).Value
        cible.Cells(ligne, 9).FormulaR1C1 = "=RC[-6]*RC[-5]*R[3]C[-6]*(RC[-4]+RC[-3]+RC[-2]+RC[-1])"
        cible.Cells(ligne + 1, 9).Formula = "=SUM(I2:I" & ligne & ")"
        Val1 = cible.Cells(ligne + 6, 5).Formula
        cible.Cells(ligne + 6, 5).Formula = "=R[-3]C[-2]*R[-6]C[-2]*R[-6]C[-1]*R[-6]C + & Val1 &"
        'Val2 = cible.Cells(ligne + 6, 6).Formula
        'cible.Cells(ligne + 6, 6).Formula = "=(" & Val2 & "+ R[-3]C[-3]*R[-6]C[-3]*R[-6]C[-2]*R[-6]C)"
        'Val3 = cible.Cells(ligne + 6, 7).Formula
        'cible.Cells(ligne + 6, 7).Formula = "=(" & Val3 & "+ R[-3]C[-4]*R[-6]C[-4]*R[-6]C[-3]*R[-6]C)"
        'Val4 = cible.Cells(ligne + 6, 8).Formula
        'cible.Cells(ligne + 6, 8).Formula = "=(" & Val4 & "+ R[-3]C[-5]*R[-6]C[-5]*R[-6]C[-4]*R[-6]C)"
        Exit For
    End If
suite:
 Next
 
End Sub
'Problème sur la ligne en bleue et les suivantes

Le but est de reprendre une formule déjà présente dans une case de l'onglet (formule format excel : E2*F5+A3.......) et d'y ajouter les données importées par la macro (format VBA : R[-4]C*RC[2].....)
J'ai l'impression d'avoir essayé une infinité de syntaxe mais aucune ne fonctionne.

Si quelqu'un à une idée je l'en remercie grandement et mon projet pourra enfin voir le jour

A+