additionner plusieurs valeurs suivant condition

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

Guigui

XLDnaute Occasionnel
Bonjour le forum,

Voici mon souci.
(voir exemple joint..)

Je souhaite additionner différente valeurs en fonction d'une cible dans un tableau

je penses aux fonction RECHERCHEV et EQUIV mais je ne maitrise pas du tout !!

Jetez un oeil au fichier joint, beaucoup explicite 🙂

Merci d'avance
Guillaume
 

Pièces jointes

Re : additionner plusieurs valeurs suivant condition

Bonsoir,
ci-joint proposition sous réserve d'avoir compris ta demande.
En effet, tu parles d'addition mais j'ai l'impression que tu parles de valeur max.
J'ai donc fait en conséquence.
Les tableaux n'ayant pas de structure identique, j'ai traité le sujet de manière "basique".
Il sera toujours temps de trouver une éventuelle façon d'utiliser des formules plus généralisables si les résultats sont en rapport avec ta demande.
A+
 

Pièces jointes

Re : additionner plusieurs valeurs suivant condition

Bonsoir,

Merci pour le travail fourni !!! mais en effet ca ne correspond pas.
Je parlais bien d'addition.

Ex, la zone A comprend les positions ABL, AB, AA et A, donc je souhaitais additionner les cases contenant un poids pour ABL, AB, AA et A....

Bref, Je cherchais un moyen de faire ca en formule pour gagner du temps et rendre plus souple d'hypothétique changement, mais tout compte fait .. j'ai fais pour chaque case "Upper" ou "Lower" un traditionnel "=Somme( ....) bien long ... j'avoue 🙂

Merci encore.
Slts
Guillaume !!
 
Re : additionner plusieurs valeurs suivant condition

Re,
Par exemple la zone C, doit additionner les positions : (en jaune)
C / CC / BCL-BCR / BC pour la case Upper
21P / 13L-13R / 21L-21R pour la case Lower
BCR et 21L-21R n'apparaissent pas dans le tableau zone (bien que mon calcul prenne quand même BCR en compte, mais en le comptabilisant avec BCL (on peut les rendre autonomes si c'est ce que tu veux)).
Je t'ai refait les calcul avec les sommes à côté des valeurs max mais si tu veux de l'aide, il te faut être plus précis.
Remplis correctement ton tableau avec des valeurs facilement repérables (comme je l'ai fait pour la zone C) et précise ta demande en prenant un exemple concret.
A+
 

Pièces jointes

Re : additionner plusieurs valeurs suivant condition

Re,

Je te joint le fichier (réduit) du résultat attendu ...

Je souhaite additionné pour chaque ZONE les Poids des POSITIONS
correspondant au ZONE (cf tableau <<)

>> Les Zones A, B , C n'ont rien à voir avec les POSITIONS A, B, C ...

Exmples:
Les positions A, AA, AB, ABL-ABR(88"), ABL-ABR(96"), 11P, 11R-11L font parties de la zone A.
Les positions D, DD, CE, CEL-CER(88"), CEL-CER(96"), 22P, 22L-22R font parties de la zone D
Dans le tableau, seul les positions L (Left CEL, ABL... ) sont marqués mais elles sous entendent que la positions Right (ABR, CER ...) est à prendre en compte dans l'addition..

...

Merci encore
Guillaume
 

Pièces jointes

Re : additionner plusieurs valeurs suivant condition

Bonjour,

Ton post m'a intéressé dès que je l'ai vu. Mais ce fut laborieux.

Je m'y suis cassé les dents, mais je n'ai pas voulu lâcher.

Je voulais traiter avec un seul SOMMEPROD, alors qu'il fallait additionner 2 SOMMEPROD (because 2 colonnes POIDS).

Formules proposées :

en AK2 :

Code:
=SOMMEPROD(($A$3:$AF$3="POS")*ESTNUM(EQUIV($A$4:$AF$19;DECALER($B$47;0;EQUIV(
$AI2;$C$46:$R$46;0);5);0))*($B$3:$AG$3="POIDS");$B$4:$AG$19)+SOMMEPROD((
$A$3:$AF$3="POS")*ESTNUM(EQUIV($A$4:$AF$19;DECALER($B$47;0;EQUIV($AI2;
$C$46:$R$46;0);5);0))*($C$3:$AH$3="POIDS");$C$4:$AH$19)

en AK3 :

Code:
=SOMMEPROD(($A$23:$R$23="POS")*ESTNUM(EQUIV($A$24:$R$35;DECALER($B$52;0;EQUIV(
$AI2;$C$46:$R$46;0);3);0))*($B$23:$S$23="POIDS");$B$24:$S$35)+SOMMEPROD((
$A$23:$R$23="POS")*ESTNUM(EQUIV($A$24:$R$35;DECALER($B$52;0;EQUIV($AI2;
$C$46:$R$46;0);3);0))*($C$23:$T$23="POIDS");$C$24:$T$35)

Ces deux formules sont à recopier ensuite pour les autres catégories.

Voir le fichier joint avec les cellules jaunes en colonne AR

Je te laisse vérifier.

@+
 

Pièces jointes

Re : additionner plusieurs valeurs suivant condition

Salut Tibo et félicitations.
Attendons le retour de Guigui mais j'ai l'impression que tu as touché juste.
Pour ma part, je m'aperçois que je n'avais pas compris la demande.
Je vais donc étudier ta proposition.
A la prochaine😉
 
Re : additionner plusieurs valeurs suivant condition

Bonjour Tibo, David84

CONGRATS Tibo !!!!!

C'est époustouflant ! voir magique 😉
Rien d'autre à dire ou à corriger .. tout y est 🙂

Encore merci à tous les deux !
Je vais maintenant caler tout ca au projet final

Merci
Guillaume
 
Re : additionner plusieurs valeurs suivant condition

Re

Pti bug découvert... 🙂

En zone D, je ne devrais pas prendre en compte la Position 22P pour une pallette 88"
mais la voir en zone E

Pour une pallette 96" la position 22P est bien en zone D et non en zone E

J'essaie de modifier ta formule, mais en vain..
(d'ailleur, à quoi correspond ta plage de cellule DECALER($B$52 ...? elle repere si c'est une 88" ou 96" ??)

Merci encore pour ce dernier pti coup de pouce 🙂

Guillaume
 
Re : additionner plusieurs valeurs suivant condition

re,

Je n'avais pas fait le rapport entre les données en A47:A54 et les données des lignes 2 et 22.

Je ne sais pas si ça va simplifier le problème ou au contraire le compliquer.

Le souci de ton tableau, c'est que certains sous-tableaux ont 4 colonnes et d'autres 6.

La 2ème colonne POS doit-elle être prise en considération ? et comment ?

A te (re)lire avec ces quelques détails avant que j'y consacre quelques neurones.

@+
 
Re : additionner plusieurs valeurs suivant condition

Re,
je file travailler. je te repond ce soir et t'envoie également le contexte de tout cela 😉
Permet de mieux comprendre ...

Mais oui la 2eme colonnes POS est a prendre en compte avec le poids qui est à coté.

Slts
Guillaume
 
Re : additionner plusieurs valeurs suivant condition

rere,

autre point, si j'ai bien compris, le 2ème POIDS est rattaché au 2ème POS ?

Si oui, dans l'exemple joint, le POIDS en O7 correspond à la POS EFR.

Or, d'après ton tableau de Zones, EFR n'appartient pas à la zone E

et donc O7 ne devrait pas être compris dans Upper E ?

A te (re)lire avec des explications sur ce point

@+
 
Re : additionner plusieurs valeurs suivant condition

Or, d'après ton tableau de Zones, EFR n'appartient pas à la zone E
et donc O7 ne devrait pas être compris dans Upper E ?

En effet EFR n'apparait pas dans le tableau car pour tout position "L" correspond la position "R"
(Left - Right) ce sont des doublets . EFL-EFR, ABL-ABR ....

Je t'explique le contexte de tout cela (du moins j'essaie).

Dans l'aérien, pour qu'un avion décolle, le CDB doit connaitre le poids de son avion à trois phases de vol.
1/Sans carburant
2/Au décollage
3/A l'atterrissage

Il doit également connaitre la répartition des charges à bord (passager, carburant, bagages ...). Ce qui lui donne pour les mêmes phases de vol vulgairement où se trouve le centre de gravité de l'avion et lui permet donc de régler ses instruments pour le décollage. (Le Trim)

Je lui délivre donc un "DEVIS DE MASSE ET CENTRAGE" (informatisé) qui rassemble tout cela...

J'assiste un avion "tout cargo" depuis peu, le principe est identique. Cette fois-ci le support n'est plus informatisé mais "manuel" (support papier)
Le but de mon projet est d'informatisé (gain en rapidité) la partie prévisionnelle du DEVIS (la partie définitive et officiel étant effectué avec le support papier ..!(officiel) (pas fou non plus !)

Dans un avion classique, le fret est chargé sur des palettes ou dans des containers dans la partie inférieur de l'avion (Lower deck - les soutes). Sur un avion cargo, le pont cabine est utilisé pour la meme choses (Upper Deck)

Il existe des positions dans les soutes pour positionner ces palettes ou containers.
(Position A, B, C, D... AB, ... HJR, HRL ... suivant l'arrangement de la version de soute et de la taille des palettes (88", 96") ou containers)

J'utilise alors un "plan de chargement" ou j'y indique l'emplacement de tels ou tels palettes avec son poids ! (qui est utilisé par la suite au responsable chargement pour charger l'avion 😉 Plan, que j'ai "excelisé" ...🙂


Pour chaque position, va correspondre une zone de centrage, qui influera en négatif ou en positif sur le centre de gravité de l'avion.


Dans mon fichier exemple le tableau en bas avec les cases noir rassemblent ces informations.
Les petits tableau couleur récupère les poids pour chaque position en liaison avec le plan de chargement "excelisé" (autres onglet du projet complet)

Le but étant de reporter ensuite pour chaque ZONE de centrage les poids qui correspondent !
A ces poids (totaux upper et lower deck par zone) une variation (- ou +) du centrage est appliqué (ca j'ai réussi via l'aide du forum 🙂
Ces variations sont ajouté ou retiré au "centrage de base" (à vide) de l'avion et on obtiens donc les masses et centrage de l'avion au décollage, sans carburant, et à l'atterrissage 🙂

Voilà est-ce un peu plus clair ?
J'avoue il est tard je sais plus si j'ai répondu à tes questions 🙂

A revoir donc.
Guillaume
 
Re : additionner plusieurs valeurs suivant condition

Bonjour,

Merci pour tes explications et tes schémas.

Il est toujours intéressant de connaître le pourquoi des questions et savoir à quoi les réponses vont servir.

Avec les précisions que tu as donné, j'ai privilégié l'analyse de chaque sous-tableau, plutôt que de chercher à faire une analyse de l'ensemble des tableaux (pas sûr d'ailleurs que cela aurait été possible.

Précision : les libellés des lignes 2 et 22 doivent correspondre exactement aux libellés en A43:A50

J'ai mis les formules en colonne AR :

en AR2 :

Code:
=SOMMEPROD(($A$4:$A$18=INDEX($C$43:$R$47;EQUIV($A$2;$A$43:$A$47;0);EQUIV(AI2;
$C$42:$R$42;0)))*($B$3:$C$3="POIDS");$B$4:$C$18)+
SOMMEPROD(($G$4:$G$18=INDEX($C$43:$R$47;EQUIV($G$2;$A$43:$A$47;0);EQUIV(AI2;
$C$42:$R$42;0)))*($H$3:$I$3="POIDS");$H$4:$I$18)+
SOMMEPROD(($M$4:$M$18=INDEX($C$43:$R$47;EQUIV($M$2;$A$43:$A$47;0);EQUIV(AI2;
$C$42:$R$42;0)))*($N$3:$O$3="POIDS");$N$4:$O$18)+
SOMMEPROD(($U$4:$U$18=INDEX($C$43:$R$47;EQUIV($U$2;$A$43:$A$47;0);EQUIV(AI2;
$C$42:$R$42;0)))*($V$3:$W$3="POIDS");$V$4:$W$18)+
SOMMEPROD(($AC$4:$AC$18=INDEX($C$43:$R$47;EQUIV($AC$2;$A$43:$A$47;0);EQUIV(AI2;
$C$42:$R$42;0)))*($AD$3:$AE$3="POIDS");$AD$4:$AE$18)
en AR3, sa petite soeur :

Code:
=SOMMEPROD(($A$24:$A$35=INDEX($C$48:$R$50;EQUIV($A$22;$A$48:$A$50;0);EQUIV(AI2;
$C$42:$R$42;0)))*($B$23:$C$23="POIDS");$B$24:$C$35)+
SOMMEPROD(($G$24:$G$35=INDEX($C$48:$R$50;EQUIV($G$22;$A$48:$A$50;0);EQUIV(AI2;
$C$42:$R$42;0)))*($H$23:$I$23="POIDS");$H$24:$I$35)+
SOMMEPROD(($M$24:$M$35=INDEX($C$48:$R$50;EQUIV($M$22;$A$48:$A$50;0);EQUIV(AI2;
$C$42:$R$42;0)))*($N$23:$O$23="POIDS");$N$24:$O$35)
Ces formules sont ensuite à recopier en AR6, AR10, AR14 et AR18

Je te laisse vérifier avec soin si ces formules répondent à ton attente (je ne voudrais pas qu'un avion cargo décolle avec un mauvais centre de gravité 😉).

Voir le fichier joint

@+
 

Pièces jointes

- 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
4
Affichages
222
P
Réponses
7
Affichages
955
Pilliars
P
Réponses
7
Affichages
874
Retour