Calcul de la somme de plusieurs colonnes

Résolu/Fermé
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 - 27 janv. 2016 à 15:28
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 - 31 janv. 2016 à 22:38
Bonjour,
Pourriez vous m'indiquer comment faire la somme de chaque colonne à partir
de la colonne E sur la même dernière ligne vide

je peux le faire sur une colonne avec

Range("E" & Cells.Find("*", , , , , xlPrevious).Row + 2) = Application.Sum(Range(E5).EntireColumn)

mais je voudrais que ce code s'applique à une rangée de cellules disons de E:G

merci

15 réponses

max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
30 janv. 2016 à 21:32
bonsoir Le Pingou
en postant ce sujet je ne pensais pas soulever une telle montagne. Sans doute que mes explications n'étaient pas assez claires. j'en suis vraiment très confus

si nous prenons la feuille journalrecette
je voudrais que chaque fois que je rentre une information via mon userform dans la colonne E F G H I J ou K ou sur les 5 colonnes le total de chaque colonne systématiquement s'affiche sur la dernière ligne vide de l'ensemble de ces colonnes. S i l'une des colonne est vide s'affichera 00.00. ces totaux seraient réactualisés donc à chaque entrée d'info

ceci à partir de la colonne E jusqu'à la colonne K et de la ligne A3 jusqu'à la dernière ligne non vide
je ne travaille pas directement sur la feuille mais via un userform

supposons que la dernière info soit entrée en E7 et que la dernière ligne vide soit donc la ligne A8
les totaux de chaque colonne E F G H I J OU K s'inscriront dans E8 F8 G8 H8 I8 J8 K8

En appuyant sur le bouton de commande de mon userform
je renseigne les différentes colonnes de ma feuille Journalrecette
et je voudrais que cette manip me fasse donc en même temps les totaux de chaque colonne de cette feuille comme expliqué ci-dessus

merci
1
jc80 Messages postés 4243 Date d'inscription mardi 5 février 2013 Statut Membre Dernière intervention 25 février 2019 1 424
27 janv. 2016 à 15:57
Bonjour

A tester

Option Explicit
Sub *****()
Dim Fin As Long, Liste As Range
Fin = Columns("B").Find("*", , , , , xlPrevious).Row
Set Liste = Range("E2:G" & Fin)
Range("E1") = Application.Sum(Liste)
End Sub

Cordialement
0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
27 janv. 2016 à 16:21
bonjour jc80

non je ne récupère aucune somme
0
jc80 Messages postés 4243 Date d'inscription mardi 5 février 2013 Statut Membre Dernière intervention 25 février 2019 1 424
27 janv. 2016 à 16:24
Tu veux la somme des 3 colonnes dans quelle cellule?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
27 janv. 2016 à 17:12
non je veux la somme de chaque colonne a partir de la colonne E jusqu'à la colonne G sur la dernière ligne vide de ma feuille


si ma dernière ligne vide correspond à E10 je veux la somme de la colonne E en E10, la somme de la colonne F en F10, G en G10
0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
28 janv. 2016 à 22:14
bonsoir
Pourriez vous m'aider à comprendre pourquoi le code suivant me génère que des 0000
dans mes colonnes alors qu'y figurent bien des nombres

merci

Private Sub CommandButton1_Click()
Dim L as Integer
Dim i as Integer

With ActiveSheet

L = .Range("A65536").End(xlUp).Row + 1

For i = 5 To .UsedRange.Columns.Count
.Cells(L, i).Formula = "=SUM(" & .Range(.Cells(7, i), .Cells(21, i)).Address & ")"

Next

End With
End Sub
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 29/01/2016 à 14:22
Bonjour Max, Jv
Option Explicit
'----------------------------------
Sub totaliser_colonnes()
Dim Derlig As Integer, DerCol As Integer, Lig As Integer, Col As Integer

Application.ScreenUpdating = False

With ActiveSheet
Derlig = .Columns("E").Find(what:="*", searchdirection:=xlPrevious).Row
DerCol = .Rows(5).Find(what:="*", searchdirection:=xlPrevious).Column
Lig = Derlig + 1
For Col = 5 To DerCol
.Cells(Derlig, Col) = Application.Sum(.Range(.Cells(5, Col), .Cells(Derlig, Col)))
Next
End With
End Sub


 Michel
0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
29 janv. 2016 à 16:53
Michel merci pour ta contribution

j'ai placé ta procédure dans mon programme mais sans succès
je t'envoie le fichier pour que tu puisses y voir plus clair

merci




https://www.cjoint.com/c/FADpY6ztf1v
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 29/01/2016 à 17:49
fallait l'envoyer AVANT plutôt que mettre un code bidon
Donc, tu fais l'effort d'adapter à ton classeur

terminé en ce qui me concerne, je ne suis pas taillable et corvéable à merci
0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3 > michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023
29 janv. 2016 à 18:22
je me demande vraiment où je suis tombé. ce code n'était pas bidon

je t'ai envoyé le fichier pour ne pas voir à te donner des explications plus ou moins claires dans mon jargon de non-informaticien et juste donc pour avoir des explications pour pouvoir corriger mes fautes moi-même, pas pour que tu fasses le travail à ma place
je me suis sans doute mal exprimé mais cela ne justifie en rien cette fin de non-recevoir
pour le moins pas élégante du tout
0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
30 janv. 2016 à 17:27
Bonjour,
Juste en passant, en admettant que ce soit sur la feuille [journalrecette] dont vous parlez, il n’y a aucun besoin de faire des totaux de colonne avec une macro, un simple : SOMME(E4 :E21] dans la cellule [E23] suffit.
Ou alors vos explications ne sont pas correctes… !

0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
30 janv. 2016 à 22:06
Bonjour,
Merci pour le complément d’information.
En première vue je pense que vous compliquez ce qui est simple.
Je vous donnerai une proposition d’ici lundi.
Bon dimanche.

0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
30 janv. 2016 à 22:54
Bonjour,
Juste une question : pourquoi ne pas mettre les totaux directement sous les noms de colonnes… !

0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
30 janv. 2016 à 23:15
effectivement pourquoi pas ce serait immédiatement lisible


merci
0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
30 janv. 2016 à 23:37
Bonsoir,
Merci
0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
31 janv. 2016 à 14:24
Bonjour,
Ma proposition, voir feuille [journalrecette], totaux via fonction [SOMME()].
Votre fichier : https://www.cjoint.com/c/FAFnxyBz7Ms

0
max850 Messages postés 304 Date d'inscription dimanche 10 janvier 2016 Statut Membre Dernière intervention 4 janvier 2020 3
31 janv. 2016 à 22:12
Bonsoir Le Pingou
Votre excellent travail me convient parfaitement. C'est exactement ce que je voulais. j'ai juste ajouté "Report" dans D4 en défusionnant D3

Merci beaucoup beaucoup

je considère donc mon problème comme résolu
0
Le Pingou Messages postés 12199 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 21 novembre 2024 1 450
31 janv. 2016 à 22:38
Merci max850,
Content pour vous.
0