MAcro pour somme par réference

D

Dominique

Guest
Je voudrais une macro qui me ferais la somme de chaque référence à chaque séparation de cell ci .
Voir exemple ci joint .
Merci par avance et bravo pour ceux qui m'aide jusque ici.
 

Pièces jointes

  • TRi.xls
    46 KB · Affichages: 62
  • TRi.xls
    46 KB · Affichages: 69
  • TRi.xls
    46 KB · Affichages: 66
J

Jean-Marie

Guest
Re ...

Je mes suis posé des questions en voyant ton fichier exemple :

Les lignes devant totaliser la somme des valeurs de chaque référence, sont-elles déjà insérées ?
- Si cette réponse est négative, regarde du côté du menu Données/Sous-Totaux... Pour le faire sélectionne ta plage de données et clique sur ce menu, une boîte de dialogue va s'afficher, donne les instructions à cet assistant et clique sur OK, tu verras des petits + des - sur le côté gauche. les formules sont mises automatiquement par cet assistant.
Tu pourras masquer les + et les -, en décochant l'option "symbole du plan" de l'onglet affichage dans les options d'Excel.

Dois-tu avoir la somme par référence dans cette liste ?
- Si la réponse est négative, regarde du côté des Tableaux Croisé Dynamique, en abréviation TCD, il y a plein de démos sur XLD, fait une recherche...

Et la dernière, une macro, mais je laisse à mes amis d'XLD de te l'expliquer.

Tu vois, il y a plusieurs façons de traiter ton problème, si tu n'as pas eu de réponse à ton post, c'est sûrement, que tu n'était pas assez explicite...

@+Jean-Marie
 
V

Vériland

Guest
Re Dominique, Jean-Marie et toi le forum,

personne n'est passé pour t'aider dans ta requête ?...bon ben je te donne la solution alors...et en couleur...lol

bon j'ai gardé la macro de base que Lien supprimé t'avait donné, j'y ai juste rajouté l'option qui permet de faire ce que tu souhaites...à savoir additionner les valeurs des réferences...

voilà tu pourras le faire par le biais de cette macro...

Option Explicit

Sub Inserer_ligne_et_somme()
'
Dim Valeur As Long
Dim Boucle As Long
Dim Plage As Long
'
Application.ScreenUpdating = False
Valeur = Cells(4, 3)
Plage = 2
For Boucle = 3 To 100
If Cells(Boucle, 3) = "" Then
Exit Sub
Else
If Cells(Boucle, 3) <> Valeur Then
Rows(Boucle & ":" & Boucle).Select
Selection.Insert Shift:=xlDown
'
' j'ai rajouté ceci pour intégrer une
' formule "somme" dans la cellule en question
' j'ai aussi paramétré cette cellule en fond jaune

'
With Cells(Boucle, 3)
.Formula = ("=sum(" & (Range("C" & Plage).Address(0, 0) & _
":" & Range("C2").End(xlDown).Address(0, 0) & ")"))
.Interior.ColorIndex = 36
End With
'
' et la on continue la boucle
Boucle = Boucle + 1
Valeur = Cells(Boucle, 3)
Plage = Boucle
End If
End If
Next Boucle
Application.ScreenUpdating = True
End Sub


Le principe sera d'y inclure la formule =somme(Cx:Cy) lorsque la boucle l'éxigera...

Voilà pour moi

A+Veriland.gif


PS : Macro à copier depuis le forum auquel cas tu risques d'avoir les attributs gras du post dedans...
 

Discussions similaires

Réponses
5
Affichages
262

Statistiques des forums

Discussions
314 085
Messages
2 105 631
Membres
109 402
dernier inscrit
dalilouille