Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

SommeProd dynamique avec condition VBA

  • Initiateur de la discussion Initiateur de la discussion pumbathekings
  • 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 !

P

pumbathekings

Guest
Bonjour à tous,

Je n'ai pas trouvé d'exemple pouvant réellement m'aider du coup je me tourne encore une fois vers le forum.

J'ai une masse initiale à laquelle j'aimerai rajouter certaines masses de mes équipements (si chiffre dans colonne I).
Néanmoins, lorsqu'un équipement STD (colonne H) n'est pas sélectionné alors sa masse sera retirée à la masse initiale.
J'aimerai que le tout soit dynamique afin de voir en direct la valeur de la masse TOT évoluer.
D'avance merci.

Pumba
 

Pièces jointes

Re : SommeProd dynamique avec condition VBA

Si je résume, on doit réunir deux critère afin que la masse de l'équipement soit additionnée à la masse initiale :
1) On doit avoir un chiffre dans la colonne I
2) On doit avoir STD en H

Dans le cas où il n'y a pas écrit STD, alors la masse équipement est retirée à la masse initiale.

J'ai donc rajouté une colonne avec un SI à deux critère :
SI la cellule dans la colonne I est supérieure à 0 (donc, contient un chiffre) ET SI STD est présent en colonne H ALORS on reprend la valeur de l'équipement SINON on passe la valeur de l'équipement en négatif (pour la soustraire).
En dessous, je fais la somme de cette colonne que j'additionne à la masse initiale dans la cellule masse totale.

Masque la colonne CalcRep et c'est bon.
 

Pièces jointes

Re : SommeProd dynamique avec condition VBA

Re,

Dans ce cas ta formule prend en compte tous les équipements, je ne cherche qu'a additionner ceux auquels je rajouter un chiffre dans la colonne répétition (d'ou le sommeProd).

De plus existe t-il une manière de le faire dynamiquement afin de voir pour toute répétition de l'équipement, la modification de la masse?

Merci

Pumba
 
Re : SommeProd dynamique avec condition VBA

Re,

Doktor, en se qui concerne les critères:
1) si chiffre dans la colonne I, alors on multiplie le chiffre par la masse pour l'ajouter à la masse initiale.
2) si STD dans la colonne H avec un chiffre en I, la masse initiale ne bouge pas
3) si STD dans la colonne H sans chiffre en I, alors on soustrait la masse à la masse initiale.

En esperant avoir été plus clair.

Merci

Pumba
 
Re : SommeProd dynamique avec condition VBA

Re

Est-ce que c'est mieux ?

=$E$1+SOMMEPROD(($G$5:$G$38)*($I$5:$I$38)*($H$5:$H$38<>"STD"))-SOMMEPROD(($G$5:$G$38)*($I$5:$I$38=0)*($H$5:$H$38="STD"))
 
Re : SommeProd dynamique avec condition VBA

Voilà pour moi.
Toujours en masquant la colonne CalcRep.

Les calculs étant indépendants pour chaque ligne, si tu modifies ne serait-ce qu'une ligne, ta masse totale bouge en conséquence. Je crois que c'est ce que tu voulais en parlant de "dynamisme".

Par contre, s'il n'y a ni STD ni chiffre dans la colonne I, que fait-on?
 

Pièces jointes

Dernière modification par un modérateur:
Re : SommeProd dynamique avec condition VBA

c'est exactement ca oui, merci à vous deux !

Pour Eric, est-il possible de voir le résultat des SommeProd évoluer à chaque modification de ligne?
Merci

Pumba
 
Re : SommeProd dynamique avec condition VBA

Re

cela m'arrive souvent de mettre le total en haut de page et de figer les volets. Comme cela tu n'as pas besoin d'insérer des lignes dans les tableaux et tu as toujours le total à vue
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…