Somme de plusieurs cellules suivant un critère

Signaler
-
Messages postés
13025
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
11 juin 2021
-
Bonjour la communauté,

J’ai un souci avec une macro depuis 3 jours et je souhaite vous le soumettre pour vos éventuelles contributions qui seront les bienvenues.

J’ai un tableau de 3 colonnes ordonnées comme suit : Code-Libellés-Montant. A l’aide d’un formulaire, je rentre les données de dépenses avec 3 textbox dans les colonnes respectives. Il peut arriver qu’un même code se répète sur plusieurs lignes de suite avec des libellés et des montants correspondants dans leurs colonnes respectives. Les codes représentent des lignes budgétaires pour lesquelles je dois faire un suivi.

Code Libellés Montant
A1 Dépense1 3 500​
A1 Dépense2 5 000​
A1 Dépense3 2 000​
B1 Dépense4 10 000​
B1 Dépense5 7 200​
C1 Dépense6 15 000​
C1 Dépense7 6 300​
C1 Dépense8 3 100​
C1 Dépense9 2 000​

A cet effet grâce à un combobox, je fais appel avec trie sans doublon des codes de la première colonne. Ce que je souhaite, c’est d’obtenir dans un textbox4, la somme des montants correspondants à ce code qu’on retrouve dans la colonne 3.

J’ai fouillé sur internet à la recherche de macros similaires pour adaptation, mais hélas ! En fait je suis débutant en vba.

Merci d'avance!

2 réponses

Messages postés
3207
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
10 juin 2021
449
Bonjour à tous,

Un
=somme.si(montant;code;"a1")
suffit amplement

Crdlmt
Messages postés
13025
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
11 juin 2021
2 201
Bonjour à vous deux

Primo rectification DjiDji la formule SOMME.SI a pour syntaxe :
=SOMME.SI(plage codes;code;plage montants)

Deuzio XIII tu dois appliquer cette formule en VBA ce qui donnerait quelque chose comme
montant-total= WorksheetFunction.SumIf(Sheets("Feuil1").Range("A:A"), code, Sheets("Feuil1").Range("C:C"))

en ayant au préalable récupéré dans une variable code le code recherché

Impossible d'affiner plus sans avoir ton fichier que tu aurais du joindre à ta demande pour être sûr d'avoir la solution adéquate

Cdlmnt
Via