Round d'une somme de cellules non adjacentes dans VBA

Bonjour,

J'ai un petit souci avec une formule et je suis completement bloquée, je voudrais faire un round d'une somme dans VBA, mon language est english (UK).

J'ai essaye de faire plusieures tentatives dont celle là :

Sub somme()

For i = 2 To 20

Range(Cells(i, 34), Cells(i, 34)).Formula = "=round((Cells(i, 15).Value + Cells(i, 17).Value + Cells(i, 19).Value + Cells(i, 21).Value + Cells(i, 23).Value + Cells(i, 25).Value + Cells(i, 27).Value + Cells(i, 29).Value + Cells(i, 31).Value + Cells(i, 33).value),0)"

Next i

End sub

et celle là :

Sub somme()

For i = 2 To 20

Dim somme As String

Dim Rng As Range

Set Rng = Range(Cells(i, 34), Cells(i, 34))

Rng.Select

somme.Value = "=sum((Cells(i, 15).Value , Cells(i, 17).Value , Cells(i, 19).Value , Cells(i, 21).Value , Cells(i, 23).Value , Cells(i, 25).Value , Cells(i, 27).Value , Cells(i, 29).Value , Cells(i, 31).Value , Cells(i, 33).value)"

Range(Cells(i, 34), Cells(i, 34)).Formula = "=round(("somme"),0)"

Next i

End Sub

Le message d'erreur est "Expected end of statement"

J'ai essayé aussi avec des " et des & mais dans ce cas, j'ai dans ma cellule la formule et non le résultat.

Je vous serait reconnaissante si vous pouviez m'aider.

Cordialement,

Juliette

Bonjour,

Peux tu joindre le fichier sur lequel tu travailles ?

-- 15 Nov 2010, 11:18 --

Dans ton exemple et sans améliorer le code c'est :

Sub somme()

For i = 2 To 20

Cells(i, 34).Value = Application.Round(Cells(i, 15).Value + Cells(i, 17).Value + Cells(i, 19).Value + Cells(i, 21).Value + Cells(i, 23).Value + Cells(i, 25).Value + Cells(i, 27).Value + Cells(i, 29).Value + Cells(i, 31).Value + Cells(i, 33).Value, 0)

Next i

End Sub

Excellent!

Merci beaucoup ketamacanna, ça marche super bien!

Juliette

Rechercher des sujets similaires à "round somme adjacentes vba"