Somme de cellules au sein d'une cellule

george

XLDnaute Nouveau
Bonjour le forum,

Je souhaiterais imposer une nouvelle valeur a une cellule qui serait sa valeur actuelle plus la somme des 13 cases précédentes.
Cependant, malgré le code ci dessous, je n'arrive pas a obtenir le résultat attendu et juste la formule écrite dans la cellule cible.

Code:
CurrentValue = ws_output.Cells(35, j_output + 1).Value
ws_output.Cells(35, j_output + 1).FormulaR1C1 = "=Sum(R[-13]C:R[-1]C)+CurrentValue"

Merci d'avance pour votre aide
 

Fred0o

XLDnaute Barbatruc
Re : Somme de cellules au sein d'une cellule

Bonjour gearge,

Sans fichier exemple, difficile de taper juste...

Cependant, essaie peut-être ceci :
VB:
CurrentValue = ws_output.Cells(35, j_output + 1).Value
ws_output.Cells(35, j_output + 1).value = "=Sum(R[-13]C:R[-1]C)+CurrentValue"

A+
 

george

XLDnaute Nouveau
Re : Somme de cellules au sein d'une cellule

Oui je sais sans fichier c'est pas evident...
J'ai verifié mes variables : CurrentValue a une valeur associée et n'est pas déclaré donc reconnu en Variant
j_output a une valeur associé également

Non cela ne fonctionne pas Fred, il me renvoie le meme probléme : Aucune valeur dans la cellule cible et juste la formule

Merci pour tout aide
 

Fred0o

XLDnaute Barbatruc
Re : Somme de cellules au sein d'une cellule

Re-bonjour,

En effet, on affecte à la cellule, une formule. On peut peut-être essayer ceci :
VB:
    CurrentValue = ws_output.Cells(35, j_output + 1).Value
    For i = -13 To -1
        CurrentValue = WorksheetFunction.Sum(ActiveCell.Offset(i, 0), CurrentValue)
    Next
    ws_output.Cells(35, j_output + 1).Value = CurrentValue

A+
 

george

XLDnaute Nouveau
Re : Somme de cellules au sein d'une cellule

Je viens d'essayer, en declarant i as integer, il me donne un message d'erreur sur la ligne CurrentValue=Worksheet... "Application defined or object defined error"
Dois je changer WorksheetFunction?
 

Fred0o

XLDnaute Barbatruc
Re : Somme de cellules au sein d'une cellule

Re-bonjour,

Je ne pense pas que l'erreur vienne de la variable i. Essaie donc ceci, encore plus simple :
VB:
CurrentValue = ws_output.Cells(35, j_output + 1).Value
    Fori = -13 To[COLOR=#0000FC][/COLOR] -1
        CurrentValue = ActiveCell.Offset(i, 0) + CurrentValue)
    Next
    ws_output.Cells(35, j_output + 1).Value = CurrentValue

A+
 

george

XLDnaute Nouveau
Re : Somme de cellules au sein d'une cellule

Merci Fred, avaec quelques retouches cela fonctionne parfaitement :)


Dim i As Integer
CurrentValue = ws_output.Cells(35, j_output + 1).Value
For i = -13 To -1
CurrentValue = Cells(35, 3).Offset(i, 0) + CurrentValue
Next
ws_output.Cells(35, j_output + 1).Value = CurrentValue
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 853
Membres
103 975
dernier inscrit
denry