Calcul sur une plage variable

Résolu/Fermé
July74 Messages postés 47 Date d'inscription vendredi 4 avril 2014 Statut Membre Dernière intervention 23 décembre 2018 - 5 juil. 2017 à 20:46
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 7 juil. 2017 à 07:05
Bonjour,
J'ai un fichier dans lequel je copie une liste de No pièces, type de profilés, longueurs et quantités..

Sous chaque groupe de type de profilés j'ai une ligne Total
et sous la ligne Total de chaque groupe j'ai une ligne vide.

Puis j'ai une série de colonne dans lesquels se trouve mes formules,
qui servent à calculer la répartition de chaque pièces (Quantité x Longueur)
Dans une barre..
ex.: j'ai une barre 12192mm L44x44x4.8 et j'entre 8x #548 (8x998mm) et 4x #549 (4x962mm).

J'ai une colonne (i) ou j'entre la quantité et la colonne suivante (j) multiplie la qte avec la longueur.

Mon problème est ma ligne de calcul de la barre, je dois faire le total des longueurs (j)
mais le nombre de lignes est toujours variable..

Je pourrais considérer ma colonne (a) Calculer le Total des lignes au dessus du texte "Total" en remontant jusqu'à la dernière valeur de ce type de profilé.
Dans mon ex. du profil L44x44x4.8 je voudrais que la formule du total du L44 de la colonne (j) se fasse de la ligne 8 à 19.
Voici la capture d'écran de mon fichier...

http://static.ccm2.net/www.commentcamarche.net/pictures/rY82CcAq8Mo0ow9HjaZUov8IMacNbG8wCbdQjphkLifl1SQVGEX4VDbb1mFvZJQT-image-du-fichier-calcul-optim.png

Je sais que le fichier inclut serait mieux qu'une image mais je suis au travail et je ne peux avoir accès aux sites qui permet de joindre mon fichier..

Si j'ai une réponse sans le fichier joint tant mieux, sinon j'essaierai de le joindre de chez moi ce soir..

Merci de l'attention que vous portez à cette très lonnnnngue question!

3 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 5 juil. 2017 à 21:41
Bonjour

essayez avec:
=SOMME.SI.ENS(J:J;A:A;"<>Total";C:C;"L44x44x4.8")

vous pouvez remplacer L44x44x4.8 par l'adresse de cellule qui contient le code (cell)

la formule devient
=SOMME.SI.ENS(J:J;A:A;"<>Total";A:A;cell)

mais vous pouvez avoir plus simple si vous ne répétez pas le code en A sur la ligne Total

=SOMME.SI(C:C;cell;J:J)

tout ça bien sur d'après votre image.. mais représente -t-elle bien tout la question
si ça ne va pas, effectivement, déposer votre fichier
ici:
https://www.cjoint.com/
et revenez coller ici le lien créé sur le site

à vous lire
crdlmnt

Ps: notez que ces formules fonctionnen,t même si les codes en C sont mélangé"s


La qualité de la réponse dépend surtout de la clarté de la question, merci!
0
July74 Messages postés 47 Date d'inscription vendredi 4 avril 2014 Statut Membre Dernière intervention 23 décembre 2018 1
Modifié le 6 juil. 2017 à 04:05
Merci beaucoup,
c'est super intéressant comme formule et résultat,
bien que pas tout à fait ce dont j'ai besoin, je vais sûrement m'en servir dans d'autre fichier..
Mais pour celui-ci, je comprends que même si on dit "Une image vaut mille mots" dans ce cas-ci mon fichier vas en valoir bien plus, alors le voici...
https://www.cjoint.com/c/GGgbk4el5NY

C'est un peu complexe à expliquer mais peut-être avec mon fichier ce sera plus facile..

J'ai plusieurs type de profilés, pas toujours les même et pas toujours les mêmes quantité.

je copie ma liste de profilé dans mes colonnes "a:d", Mes formules de calculs sont à partir de la colonne "f:av"
C'est dans la colonne "j" que je dois imbriquer une partie de formule (dans le style que vous m'avez donné) avec celle que j'ai déjà.

Si c'est pas trop vous demander de regarder ma formule dans cette colonne
=SI($A20="Total";(I20-SOMME(J18:J19));SI($A20="";"";I20*$D20))
c'est une formule recopiée dans toute la Plage (J4:J510)

l'exemple ci-dessus pour la ligne 20: I20-Somme(cellule variable:J19))...

Pour le moment j'allais manuellement modifier la première adresse (J18:J19)
par (J8:J19).

J'ai pensé que la seule façon de faire serait de lui référer la colonne A;
qui, au début du type de profilé, a une cellule vide.
Donc somme (Référence pour les no lignes = de la cellule au dessus de "Total" Jusqu'à la cellule avant la cellule vide.) dans la colonnes j

Bon j'ai encore écris un roman ... désolé!

Merci encore!
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 6 juil. 2017 à 08:15
Bonjour
alors puisqu'à priori vous n'avez pas dans la liste en C deux groupes différents avec les mêmes références, essayez celle ci en J4, à tirer sur la hauteur du tableau

=SI($A4="Total";I4-SOMME.SI($C$3:C3;C4;$J$3:J3);SI($A4="";"";I4*$D4))

Attention aux signes $ aux bons endroits (en gras dans la, formule ci-dessus) pour que le champ s'ajuste à la hauteur au dessus de la ligne qui contient la formule

si ça ne convient pas à l'ensemble de vos données, revenez, il ya toujours une solution

Par ailleurs,on peut aussi si vous le souhaitez cumuler quelque part le produit de la colonne D par la colonne F sur chaque ligne total en I (ou ailleurs)

crdlmnt
0
July74 Messages postés 47 Date d'inscription vendredi 4 avril 2014 Statut Membre Dernière intervention 23 décembre 2018 1
7 juil. 2017 à 03:59
Wowwwww!
Tu es un vrai magicien!
C'est Parfait, ça fait exactement ce que je voulais.
Merci beaucoup, tu viens d'alléger ma tâche au travail, c'est pas rien!

Avant de demander c'est que j'ai tellement essayer avant par moi-même!
Ça me renverse toujours autant de voir l'aide que vous m'apportez.

J'apprécie ce temps que vous m'avez donné.

Merci!
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
7 juil. 2017 à 07:05
Pas de quoi
Revenez quand vous voulez
Bonne route
crdlmnt
0