Macro qui calcule somme des cases remplies

balbinaa

XLDnaute Nouveau
Bonjour,
j'ai essayé de réaliser le macro suivant, sans succès:

On remplit la colonne Q avec des chiffres au fur et à mesure (mais dans le désordre: on peut remplir Q1, puis Q2 mais après Q15 et ensuite Q7 et après Q3 par exemple).
Il faudrait creer un macro tel que quand on remplit la colonne Q, ajouter tous les chiffres qui se trouvent

dans la colonne E correspondants aux cases de Q remplies et les mettre à la même ligne et en R

Donc à chaque fois que l'on remplit une case dans Q, on lance le macro.


Par exemple, on a d'abord Q5=1, et E5=120, donc R5=120
On remplit ensuite Q9=2, et E9=230, donc R9=120+230
Ensuite Q5=4, et E5=40, donc R5= 120+230+40
etc

Comment il faut faire?

Merci d'avance
 

Modeste

XLDnaute Barbatruc
Re : Macro qui calcule somme des cases remplies

Bonjour balbinaa,

Pas certain de bien comprendre: il me semble que la fonction SOMME.SI pourrait faire le travail aussi bien qu'une macro :confused:
Avec des valeurs dans les 20 premières lignes ça ressemblerait à:
Code:
=SOMME.SI(Q1:Q20;">0";E1:E20)
 

balbinaa

XLDnaute Nouveau
Re : Macro qui calcule somme des cases remplies

lle probleme est que on ajoute les valeurs dans la colonne Q dans le desordre (pas ligne par ligne), et il faut calculer la sommes des valeurs de E (pour les cases remplies en Q) dans la colonne R dans ce même ordre et pas tout d'un coup, (car c'est pour ensuite faire un graphique)
 

Modeste

XLDnaute Barbatruc
Re : Macro qui calcule somme des cases remplies

Re-bonjour,

Tu as eu l'occasion de tester la formule?

Si elle ne correspond pas à ce que tu souhaites, la seule solution est de nous joindre un petit fichier (sans données confidentielles!) en précisant, étape par étape, ce que tu veux faire et ce qui doit apparaître comme résultat à chacune de ces étapes.
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Macro qui calcule somme des cases remplies

Bonjour le fil, Bonjour le forum,

le code VBA avec la maco événmentielle Change si ça t'intéresse toujours :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 17 Then Exit Sub
Target.Offset(0, 1).Value = Application.WorksheetFunction.Sum(Columns(5))
End Sub
Ça évitera les formules...
 

Discussions similaires

Réponses
7
Affichages
1 K

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 413
Messages
2 088 199
Membres
103 763
dernier inscrit
p.michaux