Aide compréhension d'une formule excel
FerméRaymond PENTIER Messages postés 58732 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 29 novembre 2024 - 31 janv. 2023 à 02:15
- Aide compréhension d'une formule excel
- Formule excel pour additionner plusieurs cellules - Guide
- Formule excel si et - Guide
- Formule excel moyenne - Guide
- Formule excel - Guide
- Excel mise en forme conditionnelle formule - Guide
2 réponses
31 janv. 2023 à 02:15
Bonjour Simon.
C'est vrai que rien qu'à regarder cette formule de 539 caractères, on est rebuté et on ne voit pas comment l'analyser.
La première chose à faire consiste, comme cela est toujours vivement recommandé, à réduire drastiquement le nom des feuilles ! Ainsi il faut renommer "ZZZ COUT MACHINE ET PERSONNEL" (qui apparaît 10 fois) en "CMP" ; du coup ta formule devient :
=SIERREUR(((SI(D45="";"";INDEX('CMP'!A:K;EQUIV(D45;'CMP'!A:A;0);10))))*SI(D45="";"";INDEX('CMP'!A:K;
EQUIV(D45;'CMP'!A:A;0);11)))*'CMP'!$N$22) + (((SI(D45="";"";INDEX('CMP'!A:K;EQUIV(D45;'CMP'!A:A;0);10)))) *SI(D45="";""; INDEX('CMP'!A:K;EQUIV(D45;'CMP'!A:A;0);9)))*'CMP'!$N$23);"")
avec seulement 279 caractères.
Si tu veux aller un peu plus loin, tu définis une formule nommée, à l'aide de l'outil
FORMULES/Noms définis/Nouveau nom, en saisissant comme nom EQ et dans la fenêtre [ Fait référence à ] l'expression ="CMP!A:K;EQUIV(D45;CMP!A:A;0)"
Puis tu utilises Ctrl+H pour remplacer
CMP!A:K;EQUIV(D47;CMP!A:A;0) par EQ
et tu obtiens la formule finale :
=SIERREUR(((SI(D47="";"";INDEX(EQ;10))))*((SI(D47="";"";INDEX(EQ;11)))*CMP!$N$22)+(((SI(D47="";"";INDEX(EQ;10))))*(SI(D47="";"";INDEX(EQ;9)))*CMP!$N$23);"")
avec 155 caractères.
Il devient alors beaucoup plus facile de distinguer la structure de la formule et d'en analyser le fonctionnement, tel que mon ami DjiDji te l'a indiqué.
30 janv. 2023 à 23:14
Bonjour à tous
On va chercher dans le tableau A:K la valeur situee a la ligne donnée par EQUIV(D45;'ZZZ COUT MACHINE ET PERSONNEL'!A:A;0) et a la 10 éme colonne (colonne J) mutiplié par la valeur de la cellule adjacente multiplié par N22
+
On va chercher dans le tableau A:K la valeur situee a la ligne donnée par EQUIV(D45;'ZZZ COUT MACHINE ET PERSONNEL'!A:A;0) et a la 10 éme colonne (colonne J) mutiplié par la valeur de la cellule predente multiplié par N23
Crdlmt