Recherche trois valeurs approximatives dans un tableau et renvoyer une seule référenc

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

Morgan67

XLDnaute Nouveau
Bonjour à tous,
Je suis coincé sur un document excel que je cherche a mettre en place...
Il faut peut-être passé par une macro et j'avoue ne pas être à l'aise du tout avec ce sujet.

L'idée c'est que j'ai des caisses de certaines dimensions (longueur, largeur, hauteur) en stock.

Aussi en renseignant des valeurs (longueurs, largeur, hauteur) je souhaite que cela me sorte la caisse en stock la plus proche des valeurs renseignées (avec une tolérance de 20 centimètres de marge en plus mais aucune tolérance en moins!)

Pouvez-vous m'aider svp.

Vous trouverez le tableau en pièce jointe.

merci d'avance
 

Pièces jointes

Re : Recherche trois valeurs approximatives dans un tableau et renvoyer une seule réf

Salut Morgan67,

Je te propose la solution suivante (voir fichier joint) :

Code:
{=INDEX(A17:A96;EQUIV(MIN(SI((B17:B96<$G$9)+(C17:C96<$I$9)+(D17:D96<$K$9)>0;"NOK";(B17:B96)+(C17:C96)+(D17:D96)-$G$9-$I$9-$K$9));SI((B17:B96<$G$9)+(C17:C96<$I$9)+(D17:D96<$K$9)>0;"NOK";(B17:B96)+(C17:C96)+(D17:D96)-$G$9-$I$9-$K$9);0))}

Formule matricielle, à valider par CTRL+MAJ+ENTREE

Bon, pour expliquer un petit peu tout ça...

La formule de base consiste à regarder pour chaque caisse dans ta liste si une des dimensions est inférieure à la dimension recherchée correspondante, auquel cas on l'écarte. Puis on fait la somme des écarts entre les dimensions recherchées et les dimensions de chaque caisse dans la liste, et on prend celle qui est la plus faible (je me suis dit que ce serait celle là que tu voudrais choisir).

J'utilise donc la formule matricielle
Code:
SI((B17:B96<$G$9)+(C17:C96<$I$9)+(D17:D96<$K$9)>0;"NOK";(B17:B96)+(C17:C96)+(D17:D96)-$G$9-$I$9-$K$9)
qui me permet de renvoyer une matrice qui contient "NOK" si l'une des dimensions de la caisse est trop petite, et la somme des différences des dimensions sinon.

Ensuite, je regarde avec la fonction EQUIV quelle est la ligne de la valeur la plus faible de cette matrice.

Puis je renvoie le numéro de la caisse qui se trouve sur cette ligne avec la fonction INDEX.

Je te laisse regarder ça, à ta disposition pour toute question !

Gurgeh
 

Pièces jointes

Re : Recherche trois valeurs approximatives dans un tableau et renvoyer une seule réf

Salut Gurgeh,
C'est tout simplement topissime ta solution! En creusant davantage j'avais réussi à trouver la valeur exacte dans ma matrice
(=SI(INDEX(Numéro_de_la_caisse;EQUIV(1;(longueur=G9)*(largeur=I9)*(hauteur=K9);0))>0;INDEX(Numéro_de_la_caisse;EQUIV(1;(longueur=G9)*(largeur=I9)*(hauteur=K9);0));""))

mais impossible de trouver des dimensions approximatives!



Merci beaucoup pour ton aide!
 
- 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
Retour