Erreur lors de l'insertion d'une formule composée
Bonjour à tous,
j'ai un problème que je n'arrive pas à surmonter en VBA. J'ai une cellule J7 dans laquelle je veux insérer une formule. Cette formule est composée d'une somme de différentes formules contenues dans les cellules E14 à E21 d'un autre onglet du même classeur. Je vous ai transcrit ici le code que j'ai écrit avec les explications, pas à pas. Quelqu'un peut-il m'expliquer l'erreur ???? (j'obtiens à chaque fois une erreur de type : "Runtime error 1004 - application-defined or object-defined error".
Merci pour votre aide!! Je suis complètement bloqué....
' INSERER EN J7 UNE FORMULE COMPOSEE A PARTIR DES FORMULES D'AUTRES CELLULES
Sub entrer_une_formule()
'déclaration des variables
Dim Formule_Finale As String, Formule_i As String
'Remise à 0 de la formule dans la cellule à modifier en J7
Sheets(1).Cells(7, 10).Formula = ""
'écriture du début de la formule finale à insérer en J7
Formule_Finale = "=0"
'14 à 21 sont lignes de la page 4 (colonne 5) où les formules seront extraites et intégrées dans la formule finale
For i = 14 To 21
'si la cellule à extraire contient une formule
If Sheets(4).Cells(i, 5).Formula Like "=*" Then
'reprendre la formule sans le =
Formule_i = Right(Sheets(4).Cells(i, 5).Formula, Len(Sheets(4).Cells(i, 5).Formula) - 1)
Else
'Sinon, reprendre la valeur de la cellule
Formule_i = Sheets(4).Cells(i, 5).Value
End If
'Construction de la formule finale à chaque i
Formule_Finale = Formule_Finale & "+" & Formule_i
'changement des virgules en point virgule pour s'adapter à la version européenne d'Excel
Formule_Finale = Replace(Formule_Finale, ",", ";")
'Modification de la formule finale si certaines références à d'autres onglets du classeur ne sont pas complètes
For c = 14 To 20
Formule_Finale = Replace(Formule_Finale, "(D" & c, "(Budgetiser!D" & c)
Next c
Formule_Finale = Replace(Formule_Finale, "$E$22-$C$21", "Budgetiser!$E$22-Budgetiser!$C$21")
'La formule finale est intégrée dans la case J7
Sheets(1).Cells(7, 10).Formula = Formule_Finale
Next i
End Sub
Bonjour
Sans fichier ce n'est pas évident de tester, mais ton remplacement de la , (virgule) par ; (point-virgule) est inutile et surement à l'origine de ton erreur
en VBA les paramètres sont séparés par des , (virgules), mais les paramètres des formules dans une page Excel sont séparés par des ; (points-virgules)
Si pas ça