Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

  • Initiateur de la discussion Initiateur de la discussion steugeu
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

steugeu

XLDnaute Nouveau
Hello chers Amis du Forum !!
Comment alelz-vous par ce beau temps 🙂
Je viens vers vous avec un sujet qui me tracasse énormément !!
J'ai beau chercher, il m'est impossible de trouver !
Voici mon probleme : vous trouverez en pj un petit tableau excel. Dans celui-ci je souhaiterai
créer une macro qui me fasse automatiquement les sommes des colonens C,D,E et F !
Je ne veux pas le faire avec des sous-totaux ! Quelqu'un sait-il comment faire ?
Merci beaucoup pour votre aide !
 

Pièces jointes

Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Bonjour Steugeu,

Tu peux essayer dans le code VBA de ta feuille:

Alt + F11 ==> Feuil1
Code:
Sub Calculcol()
Dim Cel As Range, myRange As Range, z As Double
z = 0
Set myRange = Range("C1:E" & Range("A65536").End(xlUp).Row) 'Changement des colonnes içi
For Each Cel In myRange
z = z + Cel.Value
Next Cel
MsgBox ("Somme des colonnes [C] à [E] = " & z)
End Sub

Bonne journée !
 
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Merci pour ta réponse VDavid !!!
Mais en fait, je souhaite que les résultats s'affichent sur les lignes 6, 9 et 14 de mon tableau, ainsi que sur la colonne F.
Tu vois ce que je veux dire ?
 
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Tiens, voilà ce que j'aimerai que ça fasse au final :

(voir piece jointe)
 

Pièces jointes

  • Résultat final.JPG
    Résultat final.JPG
    65.9 KB · Affichages: 173
  • Résultat final.JPG
    Résultat final.JPG
    65.9 KB · Affichages: 209
  • Résultat final.JPG
    Résultat final.JPG
    65.9 KB · Affichages: 206
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Bonsoir le forum,

VB:
Sub Sous_Totaux()
Dim dl As Long, x As Long, y As Long, w As Long, z As Long
dl = Range("A65536").End(xlUp).Row
x = 1
Do
    If Range("A" & x + 1) = "" Then
      y = Range("A" & x).Row
    Else
      y = Range("A" & x).End(xlDown).Row
    End If
    z = Range("A" & y).End(xlDown).Row
    w = z - y
    Range("A" & y + 1).Value = "Total"
    Range("C" & y + 1).Value = Application.Sum(Range("C" & x & ":C" & y))
    Range("D" & y + 1).Value = Application.Sum(Range("D" & x & ":D" & y))
    Range("E" & y + 1).Value = Application.Sum(Range("E" & x & ":E" & y))
    x = y + w
Loop Until x > dl
For i = 1 To Range("A65536").End(xlUp).Row
  Range("F" & i).Value = Application.Sum(Range("C" & i & ":E" & i))
Next
End Sub

Klin89
 
Dernière édition:
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

La vache !!! C'est bon çaaaaaaa !!!!! Merci c'est exactement ça !!!!!
Je vais tester ça sur mon tableau complet (j'avais juste donner ce tableau en exemple )
Merci beaucop ! Franchement ça flingue !
Si je n'arrive pas à appliquer cette macro sur mon fichier je reviendrai vers toi !
Merci
 
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Bon, Klin89, je ne sais pas si tu es encore sur le forum,
mais au risque de passer pour un casse pieds, j'aimerai savoir comment
est-il possible de n'obtenir les sous totaux que dans la dernière colonne ?
En fait il me faudrait dans la colonne F le total par ligne des colonnes C😀:E
Comme ça en fait 🙁voir pj)

je suis vraiment désolé encore !!!
 

Pièces jointes

  • SOUS TOTAUX.JPG
    SOUS TOTAUX.JPG
    46.8 KB · Affichages: 120
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Bonjour à tous,

VB:
Sub Sous_Totaux()
Dim dl As Long, i As Long, x As Long
Dim y As Long, z As Long, w As Long
dl = Range("A65536").End(xlUp).Row
For i = 1 To dl
  If Range("A" & i).Value <> "" Then
    Range("F" & i).Value = Application.Sum(Range("C" & i & ":E" & i))
    Range("F" & i).Font.Bold = True
  End If
Next
x = 1
Do
    If Range("A" & x + 1) = "" Then
      y = Range("A" & x).Row
    Else
      y = Range("A" & x).End(xlDown).Row
    End If
    z = Range("A" & y).End(xlDown).Row
    w = z - y
    Range("A" & y + 1).Value = "Total"
    With Range("F" & y + 1)
      .Value = Application.Sum(Range("F" & x & ":F" & y))
      .Font.Bold = True
      .Interior.ColorIndex = 43
    End With
    x = y + w
Loop Until x > dl
End Sub

Klin89
 
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

Ok donc je confirme Klin89 tout marche à la perfection !! Merci énormément !!
Tu me sauve la mise sur ce coup là !!!!! Je ne sais pas ce que le forum fait par la suite,
mais mon problème est résolu !!!!
 
Re : Macro permettant la somme des lignes et colonnes avec espace entre 2 calcul

re steugeu,


VB:
Sub Sous_Totaux()
Dim dl As Long, j As Long, x As Long
Dim y As Long, z As Long, w As Long
dl = Range("A65536").End(xlUp).Row
x = 1
Do
    If Range("A" & x + 1) = "" Then
      y = Range("A" & x).Row
    Else
      y = Range("A" & x).End(xlDown).Row
    End If
    For j = x To y
      With Range("F" & j)
        .Value = Application.Sum(Range("C" & j & ":E" & j))
        .Font.Bold = True
      End With
    Next
    With Range("F" & y + 1)
      .Value = Application.Sum(Range("F" & x & ":F" & y))
      .Font.Bold = True
      .Interior.ColorIndex = 43
    End With
    z = Range("A" & y).End(xlDown).Row
    Range("A" & y + 1).Value = "Total"
    w = z - y
    x = y + w
Loop Until x > dl
End Sub

Un peu plus court 🙄
VB:
Sub Sous_Totaux1()
Dim dl As Long, j As Long, x As Long
Dim y As Long, z As Long, w As Long
dl = Range("A65536").End(xlUp).Row
x = 1
Do
    If Range("A" & x + 1) = "" Then
      y = Range("A" & x).Row
    Else
      y = Range("A" & x).End(xlDown).Row
    End If
    For j = x To y
      Range("F" & j).Value = Application.Sum(Range("C" & j & ":E" & j))
    Next
    With Range("F" & y + 1)
      .Value = Application.Sum(Range("F" & x & ":F" & y))
      .Interior.ColorIndex = 43
    End With
    Range("F" & x & ":" & "F" & y + 1).Font.Bold = True
    z = Range("A" & y).End(xlDown).Row
    Range("A" & y + 1).Value = "Total"
    w = z - y
    x = y + w
Loop Until x > dl
End Sub

Klin89
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour