Bonjour,
Je travaille actuellement sur l'automatisation d'un plan de charge industrielle.
Une famille de produit peut avoir jusqu'à 8 alternatives de production, chacune identifiée par un code unique (concaténation : n° alternative & n° de famille).
Dès lors que j’inscris ce code unique sur une autre feuille, je cherche à récupérer la valeur de la capacité qui est associée à cette alternative.
Dans ma BDD, toutes les alternatives d'une famille de produit sont inscrites sur une seule ligne :
(Code ALT1, nom ALT1, capacité ALT1 ; Code ALT2, nom ALT2, capacité ALT2 ; etc....)
De fait, je dois effectuer une recherche latérale, de 2 colonnes (sur la droite) par rapport à la position du code unique.
J'ai d'abord imbriqué un certain de nombre de "SI" pour définir la table ou se trouve le code unique (si ALT1, chercher valeur en C:C ; si ALT2, chercher valeur en F:F ; etc...), mais la formule devient vite illisible et ce n'est pas pratique pour les futures mises à jour.
Grâce à Internet, j'ai pu développer une seconde formule de recherche, en exploitant l'adresse du code unique :
=DECALER(INDIRECT("MASTER_DB!"&ADRESSE(SOMMEPROD((MASTER_DB!$O$4:$AS$130=$D11)*LIGNE(MASTER_DB!$O$4:$AS$130));SOMMEPROD((MASTER_DB!$O$4:$AS$130=$D11)*COLONNE(MASTER_DB!$O$4:$AS$130))));0;2)
(ci-dessus, D11 est le code unique)
La formule fonctionne très bien, mais demande beaucoup de ressources, ce qui fait ramé le PC.
Est-il possible d'optimiser cette dernière pour réduire la "consommation de ressources" ? Avez vous d'autres pistes de solutions pour répondre mon besoin ?
Espérant avoir été clair, je reste à disposition.
Merci par avance.
Cdlt,
Towelie.