Re : Bdsomme
Re 🙂
Me revoilà, j’ai dû m’absenter un petit moment ….
En relisant ton post, j’avoue que je ne comprends pas car de mon coté j’obtiens la même chose avec cette formule plus courte, mais j’ai peut-être fait une erreur de raisonnement ?
Pour info voici ce que j’ai voulu faire :
Pour moi, cette formule initiale :
SI($F4=1;RECHERCHEV(O4;Luc1;3;VRAI); _
SI($F4=2;RECHERCHEV(O4;Luc2;3;VRAI); _
SI($F4=3;RECHERCHEV(O4;Luc3;3;VRAI); _
SI($F4=4;RECHERCHEV(O4;Luc4;3;VRAI); _
SI($F4="1F";RECHERCHEV(O4;Luc1F;3;VRAI); _
SI($F4="2F";RECHERCHEV(O4;Luc2F;3;VRAI); _
SI($F4="3F";RECHERCHEV(O4;Luc3F;3;VRAI))))))))
Est équivalente à celle là :
RECHERCHEV(O4;INDIRECT("Luc"&F4);3;VRAI)
Et ce grâce à tes zones (astucieusement) nommées.
On observe que la condition du SI : Cellule F4= 1 2 3 4 1F 2F ou 3F
... a un lien dans la condition de recherche qui commence par Luc et finit pas les même libellés que les conditions du « si » : Luc1 Luc2 Luc3 Luc4 Luc1F Luc2F ou Luc3F
Donc j'en ai déduit que si F4= X, on cherche dans une zone nommée LucX
Dans la formule que je t’ai proposée :
1 - La concaténation « Luc »&F4 va nous donner : Luc1 Luc2 Luc3 Luc4 Luc1F Luc2F ou Luc3F
2 - La fonction Indirect(« Luc »&F4) va permettre d’aller lire les données dans cette zone nommée
Tout cela permet donc de raccourcir la formule et de ne pas imbriquer 7 si()
Voili voilou pour l’explication de ce cette formule, reste juste ensuite à l’adapter aux différentes colonnes (Killy Pompe Souple Etc …)
Qui plus est comme j’obtenais exactement les mêmes résultats que toi, j’avais cru avoir tout bon ….😱
Je ne sais pas si mes explications pourront t'aider, mais si non, je suis peut-être passée à coté d'un truc, peux-tu nous préciser ce qui ne "marche pas"?
@ +
mth