somme décalée

kevinch

XLDnaute Junior
Bonsoir le forum,

J'ai une macro qui est censée effectuer une somme (sur la feuille synthèse) sur une plage de données indéterminée (feuille satisfaction client). J'ai réussi à la faire tourner une fois mais depuis que j'ai modifié le code je ne comprends pas le problème.
Voilà le code que j'ai en ce moment :

Public tempo7
Public m

Sub somme_valeurs_tabs()
Worksheets("Satisfaction_client").Activate

ActiveCell.SpecialCells(xlLastCell).Activate
derniereligne = ActiveCell.Row

For i = 4 To derniereligne Step 1
Cells(i, 1).Select
If ActiveCell = "" Then
End
Else
tempo7 = 0
For m = 4 To (derniereligne - 4) Step 1 ' je suis pas certain de mon "derniereligne - 4 " car ça marchait sans le " - 4" au tout début...
Cells(m, 1).Select
tempo7 = ActiveCell + tempo7
Next m
End If
Worksheets("Synthèse").Activate
Cells(3, 11) = tempo7
Next i

'
End Sub


voici le lien de mon fichier:http://cjoint.com/?hBuVe0NG4o

Merci de votre aide

A+
 

ODVJ

XLDnaute Impliqué
Re : somme décalée

Bonsoir,

comment te dire.....
je ne comprends pas bien ton code!

tu ne travailles que sur la colonne 1, tu boucles 2 fois sur i et sur m, tu actives une autre feuille sans réactiver celle où sont tes données à sommer et tu ne charges qu'une cellule de l'onglet synthèse.

si c'est ce que tu veux faire, tu peux réduire ton code à ça :

Sub somme_valeurs_tabs()
' somme_valeurs_tabs Macro
' Macro enregistrée le 27/07/2006 par XZ16
Worksheets("Satisfaction_client").Activate
derniereligne = ActiveCell.SpecialCells(xlLastCell).Row
tempo7 = 0
For i = 4 To derniereligne
tempo7 = Cells(i, 1) + tempo7
Next i
Worksheets("Synthèse").Cells(3, 11) = tempo7
End Sub

par contre, tu pourrais envisager d'autres solutions comme les TCD car je pense que c'est ce que tu veux obtenir au bout du compte.

cordialement
 

Discussions similaires

Réponses
6
Affichages
287

Membres actuellement en ligne

Statistiques des forums

Discussions
312 504
Messages
2 089 070
Membres
104 018
dernier inscrit
Mzghal