Forum Clubic

Problème somme excel vba

Bonjour,

je suis confronté à un problème en VBA. En effet je souhaiterais faire une somme de 1 à n lignes se trouvant sur une même colone (n étant un nombre rentré par l’utilisateur ) voici mon bout de code!

Merci d’avance pour votre aide.

Public Sub testtab()

Dim valeur As Variant, n As Integer, i As Integer

n = InputBox(“entrez le nombre d’itération”, “n”, “0”)

For i = 1 To n

result = InputBox(“entrez case i”, “A(i,1)”, 0)
Cells(i, 1).Select
ActiveCell.FormulaR1C1 = result

Next i

With Cells(n + 1, 1)
valeur = .Value
.Font.ColorIndex = 5
.FormulaLocal = “=somme([Cells(1,1)];[Cells(n,1)])”

End With

End Sub
Edité le 15/06/2010 à 12:18

Ton .FormulaLocal se compose de partie littérales (comme =somme) et de parties qui sont des fonctions ou des variables VBA.
Seules les parties littérales doivent être mises entre guillemets.

Edit:
Et tu relies ensuite les différentes parties par des &
Edité le 15/06/2010 à 13:13

une solution serait de calculer la somme lorsque l’utilisateur rentre les valeurs :

Public Sub testtab()
Dim valeur As Variant, n As Integer, i As Integer

valeur = 0
n = InputBox("entrez le nombre d'itération", "n", "0")

For i = 1 To n
result = InputBox("entrez case " & i, "A(" & i & ",1)", 0)
Cells(i, 1).Select
ActiveCell.FormulaR1C1 = result
valeur = valeur + result
Next i

Cells(n + 1, 1).Select
ActiveCell.FormulaR1C1 = valeur
End Sub

merci beaucoup je n’ai plus de problème !!!