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

matrix

XLDnaute Occasionnel
Count if et somme par colone et feuille

Bonjour à tous,

J’ai besoin de votre aide pour cette action VBA.

Dans la feuille « Tableau Cumulatif » se trouvent des réparations faites par semaine. La semaine de la réparation se trouve dans la colonne C.

La catégorie de réparation se trouve dans la colonne M de la même ligne et le prix se trouve dans la colonne O.

Maintenant, ce que je veux faire, c’est que dans la feuille « CUMUL 2009 », dans la colonne A ce trouve les catégories de réparation qui sont inscritents de la feuille « Tableau Cumulatif » colonne M et à partir de la conne F de la feuille « CUMUL 2009 »se trouve chaque semaine de l’année, colonne pour le nombre de fois ou la catégorie a été inscrit pour la semaine en question et l’autre colonne, pour la somme des montants correspondant à chaque catégorie selon la colonne O de la feuille « Tableau Cumulatif ».

Comment faire s.v.p.?

Merci pour votre aide
 

Pièces jointes

Dernière édition:
Re : Besoins aide s.v.p

Bonsoir Matrix

matrix à dit:
Comment faire s.v.p.?

😕 si en premier lieu... tu pouvais ne pas mettre "help" "aide" ... dans le titre de ton post (Lien supprimé), mais plutôt un titre en rapport avec ta question.

Cela faciliterais les recherches ultérieurs 😉

Sinon pour tes 2 questions, tu peux par exemple utiliser la fonction =SOMMEPROD()

Voici ci-joint ton fichier complété pour la semaine 1 et 2. Les formules ont été faites pour pouvoir être recopié vers le bas (et uniquement le bas!).

Pour que la formule soit plus simple à comprendre, je me suis permis de nommer tes cellules de ton onglet : "Tableau Cumulatif" (cliquer sur "insertion" / "Nom" / "définir" pour pouvoir les voir, modifier, effacer).

Bonne soirée
 

Pièces jointes

Re : Besoins aide s.v.p

Merci.

Le problème est que dans ce fichier Excel, il y aura beaucoup de types de réparations et en plus, toutes les semaines de l'année. Donc tres lourde en formule. Je voulais plus légères donc juste des valeurs.

Est-ce possible?


JM
 
Re : Besoins aide s.v.p

Bonsoir matrix, Excel-lent,

Vu ton fichier rapidement, je ne pense pas qu'il y ait des fonctions plus légères que celles données par Excel-lent. Je n'aurais pas fait mieux...

S'il a beaucoup de données, en final, cela risque de ramer grave toutefois.....

Bon courage.

Jean-pierre
 
Re : Besoins aide s.v.p

Bonsoir Matrix, JeanPierre,

matrix à dit:
juste des valeurs

Voici les solutions qui me viennent à l'esprit :

Solution 1 : mettre les formules que sur la semaine 1, une fois la semaine 1 fini de renseigner :
-> copier les formules sur la semaine 2
-> sélectionner la semaine 1, copier, collage spécial valeur
-> et ainsi de suite au fur et à mesure de ta saisie
-> par contre si lors de ta saisie de la semaine 3, tu décide d'un coup de faire une saisie pour la semaine 1! Bien penser à refaire la manipulation pour la semaine 1! (copier formule de semaine 3 vers 1, puis copier collage spécial valeur pour la semaine 1)

A faire manuellement, où via une macro

Solution 2 : mettre aucune formule, tout faire via une macro.
-> a chaque lancement de ta macro, elle balaiera toute ta feuille, fera tous les calculs pour toutes les semaines et n'écrira dans les cellules que le résultat!
=> inconvénient, la macro risque de mettre longtemps!
=> avantage par rapport à la solution 1, si tu décide lors de la saisie de la semaine 3 à compléter ta saisie de la semaine 1, ça ira, puisque la macro recalculera tout!
=> avantage : fichier moins gros? (pas compétent dans ce domaine pour être affirmatif)

Solution 3 : mettre aucune formule, tout faire via une macro
comme la solution 2, mais demander à la macro de ne faire que la(es) semaine(s) voulu
=> tu auras les mêmes avantage qu'avec la solution 2, mais en plus, le temps d'éxécution de la macro sera plus rapide!
=> inconvénient, si tu oublis de lancer le traitement d'une semaine, tu risque de ne pas le voir! (parade : mettre une formule de contrôle en bout de ligne ou de colonne. Ou pour chaque semaine, pour savoir d'un simple coup d'oeil la semaine qui est fausse)

Matrix à dit:
dans la colonne A ce trouve les catégories de réparation

Oublié d'aborder ce point tout à l'heure! Pour ta liste des catégories, pense à utiliser une "liste" 😉 Cela évitera les erreurs de saisie.

Bonne soirée
 
Dernière édition:
Count if et somme par colone et feuille

Sous forme de macro, juste pour la première semaine, ça donne ça:

Code:
Range("F6").Select
    ActiveCell.FormulaR1C1 = "=SUMPRODUCT((RC[-5]=Catégorie)*(R4C6=Semaine))"
    Range("F6").Select
    

    Range("G6").Select
    ActiveCell.FormulaR1C1 = "=SUMPRODUCT((RC[-6]=Catégorie)*(R4C6=Semaine)*Prix)"
    Range("F6:G6").Select
    Selection.Copy
    Range("F7:G46").Select
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    ActiveWindow.SmallScroll Down:=-48
    Range("F6:G46").Select
    Application.CutCopyMode = False
    Selection.Copy
    ActiveWindow.SmallScroll Down:=-45
    Range("F6").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("F6").Select
    Application.CutCopyMode = False

Comment faire maintenant pour qu'il le fase selon la semaine demandé par exemple.
 
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

Réponses
3
Affichages
176
Réponses
5
Affichages
318
  • Question Question
Réponses
11
Affichages
446
  • Question Question
Microsoft 365 Tableau
Réponses
5
Affichages
299
Réponses
4
Affichages
348
Retour