Automatiser un tableau de quantité

Bonjour,

J’ai un tableau de relevé de quantité d’opératrice en confection. Elles sont relevées plusieurs fois par jour pour savoir combien de pièces elles ont réalisées, puis le total de la journée est calculé pour pouvoir calculé leurs efficiences.

Je souhaite dans un nouvel onglet faire un tableau d’en cours qui s’alimente automatiquement avec le total des quantités journalières de mes relevés. L’intérêt est de cumuler les quantités pour suivre l’en-cours entre les opératrices.
Mon tableau est dans l’onglet “EN COURS”. La formule fonctionne pour les deux premières opératrices car elles sont les seules à avoir réalisé leur opération. Mais pour la 3eme opération “Rep. poignets à plat”, plusieurs personnes ont fait cette opération or la formule ne va chercher que la première ligne qu’elle trouve alors que je voudrais un cumul également des lignes.
J’ai mis manuellement dans la ligne 75 les résultats attendus.
Je voudrais une seule formule, tirable de gauche à droite et de haut en bas, qui fait les cumuls des quantité par colonne TOTAL (nouveau cumul dès qu’il y a une nouvelle quantité, ignorer les quantités à 0), cumuls des lignes quand plusieurs opératrices ont fait la même opération.

J’espère que c’est clair. Merci beaucoup pour votre aide.

EN COURS.xlsx (914,8 Ko)

Hello
Quelle est la version Excel utilisée : 2019, 2021, 2024 ou Office 365

Bonjour!

Je suis sur excel online via onedrive

Bonjour,

En ligne 76, comment calcules-tu 20 ? Comme je le comprends, je suis d’accord avec le résultat de la formule, « 3.5 ».

Daniel

Dans l’onglet Relevé, quand on filtre sur l’opération Rep. poignets à Plat, on voit que plusieurs personnes ont effectuées l’opération. La première quantité réalisée est 20 le 7 avril colonne K

ok mais on perd la notion d’opératrice ?

Daniel

Oui c’est vrai mais c’est la notion d’opération qui prime car je veux savoir combien de pièce ont été réalisées en tout depuis le début du modèle

Essaie en C76, à recopier vers le bas et la droite :

=LET(tbl;TRANSPOSE(ASSEMB.V(RELEVES!$K$10:$GD$10;FILTRE(RELEVES!$K$15:$GD$915;RELEVES!$D$15:$D$915=$B76)));flt;FILTRE(EXCLURE(tbl;;1);PRENDRE(tbl;;1)="TOTAL");flta;FILTRE(flt;BYROW(flt;LAMBDA(x;SOMME(x))));fltb;BYROW(flt;LAMBDA(x;SOMME(x)));INDEX(fltb;COLONNE(A1)+SI(ESTNUM(B76);B76;0)))

Daniel

Merci.
La première valeur qui ressort semble être la bonne mais quand je tire la formule les nombre à suivre ne sont pas les bons et j’ai #REF par moment

Oups Essaie :

=LET(tbl;TRANSPOSE(ASSEMB.V(RELEVES!$K$10:$GD$10;FILTRE(RELEVES!$K$15:$GD$915;RELEVES!$D$15:$D$915=$B76)));flt;FILTRE(EXCLURE(tbl;;1);PRENDRE(tbl;;1)="TOTAL");flta;FILTRE(flt;BYROW(flt;LAMBDA(x;SOMME(x))));fltb;BYROW(flt;LAMBDA(x;SOMME(x)));INDEX(fltb;COLONNE(A1)+SI(ESTNUM(B76);B76;0)))

Daniel

PS. Mais ça ne correspond pas au valeurs que tu as indiqué sur la même ligne?

Est-ce que tu confirmes :

Colonne 1 Colonne 2 Colonne 3 Colonne 4
20 36 39 55

? Si oui, détailles le calcul stp.

Daniel

[EDIT] :

=LET(tbl;TRANSPOSE(ASSEMB.V(RELEVES!$K$10:$GD$10;FILTRE(RELEVES!$K$15:$GD$915;RELEVES!$D$15:$D$915=$B76)));flt;FILTRE(EXCLURE(tbl;;1);PRENDRE(tbl;;1)="TOTAL");flta;FILTRE(flt;BYROW(flt;LAMBDA(x;SOMME(x))));fltb;BYROW(flt;LAMBDA(x;SOMME(x)));INDEX(fltb;COLONNE(A1))+SI(ESTNUM(B76);B76;0))

Daniel

Pour la cellule C74 (Opération Rep. Poignets à plat) le résultat attendu est :
C74 : 20
D74 : 16 +20 = 36
E74: 36 + 72 = 108
F74 : 108 + 3 = 111
G74: 111 + 16 = 127
H74: 127 + 21 +20 = 168
I74: 168 + 12 = 180
J74 : 180 + 28 +4 = 212

et ainsi de suite

On est d’accord. Ma dernière formule semble faire le job.

Daniel

Oui ca a l’air de fonctionner merci !

Juste deux petites choses :innocent: lorsqu’il y a une journée où il n’y a pas eu de pièces de réalisées, je voudrais que le cumul passe directement au jour suivant, exemple:
Conf. Ceinture pliée en deux : 28 37 58 94 etc.
alors qu’avec votre formule le résultat est: 28 37 58 58 94 (car le 4ème jour les quantités étaient de 0)

Deuxième petite chose : Je ne peux pas tirer vers le haut ou vers le bas, je pense que ca vient de cette partie de la formule : INDEX(fltb;COLONNE(A1)), quand je la tire A1 devient #REF

Pensez-vous que ce soit solutionnable?

Un grand merci en tout cas !

Essaie en C74 :

=SIERREUR(LET(tbl;TRANSPOSE(ASSEMB.V(RELEVES!$K$10:$GD$10;FILTRE(RELEVES!$K$15:$GD$915;RELEVES!$D$15:$D$915=$B74)));flt;FILTRE(EXCLURE(tbl;;1);PRENDRE(tbl;;1)="TOTAL");flta;FILTRE(flt;BYROW(flt;LAMBDA(x;SOMME(x))));fltb;BYROW(flt;LAMBDA(x;SOMME(x)));fltc;FILTRE(fltb;fltb<>0);INDEX(fltc;COLONNE(A1))+SI(ESTNUM(B74);B74;0));"")

Ca doit régler les deux problèmes.

Daniel

Formule optimisée : en C74, à recopier uniquement vers le bas (supprimer les formules à droite) :

=SIERREUR(LET(tbl;TRANSPOSE(ASSEMB.V(RELEVES!$K$10:$GD$10;FILTRE(RELEVES!$K$15:$GD$915;RELEVES!$D$15:$D$915=$B74)));flt;FILTRE(EXCLURE(tbl;;1);PRENDRE(tbl;;1)="TOTAL");tbla;FILTRE(tbl;PRENDRE(tbl;;1)="total");tblb;BYROW(tbla;SOMME);tblc;FILTRE(tblb;tblb<>0);tbld;SCAN(0;tblc;LAMBDA(x;y;x+y));SIERREUR(DANSLIGNE(tbld);""));"")

Daniel

Parfait merci beaucoup vous êtes au top! :star_struck: