Bonjour,
Tu ne peux faire ça qu'avec un fonction personnalisée et donc du VBA.
J'ai créé une fonction personnalisée à laquelle on passe 2 paramètres:
- Le 1er sert à indiquer où se trouve le tableau des prix des articles, mais il sert surtout à indiquer à Excel la plage dont la modification provoquera le recalcul de la fonction personnalisée.
En l'occurrence j'ai transformé cette plage en tableau structuré qui devrait être la règle dans ce genre de situation pour ne pas avoir à gérer des plages par leurs numéros de cellules.
- Le 2ème est la composition du pack dont la syntaxe est décodée selon les exemples fournis.
C'est...
> soit le texte de la description du pack, par exemple:
=prixdupack(TableauProduits[#Données]; "2#ST10+2#ST12+2#ST14+2#FKST10")
> soit une référence à une cellule qui contient la description du pack, par exemple:
=prixdupack(TableauProduits[#Données];B13)
Si une erreur se produit dans le calcul (mauvaise syntaxe du pack, prix pas numérique, etc...) la fonction retourne un prix de -1.