XL 2010 Recherche 2 Valeurs avec conditions + mise en forme conditionnelle - Sujet clos

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

PWROLLEZ

XLDnaute Nouveau
Bonjour à tous,

Je connais le potentiel d'Excel mais malheureusement, je ne suis pas assez doué pour trouver les formules adéquates.
Sur le fichier joint, je cherche à faire ressortir automatiquement dans un tableau les prix les moins chers de mes 2 fournisseurs pour des produits identiques.
J'aimerais faire apparaître également dans un TCD un jeu d’icônes genre rond vert à côté du prix quand le produit est moins cher chez un fournisseur (idem si le produit n'est référencé que par un fournisseur), rond rouge quand il est plus cher et orange s'ils sont équivalents.

Votre aide est la bienvenue car je n'arrive vraiment pas à réaliser ces choses...

Cordialement,
 

Pièces jointes

Dernière édition:
Tu as laissé les guillemets, ce qui fait que le SI() est vrai, c'est pour cela que la valeur renvoyée par la fonction SI() est la première et non la seconde.

De plus, pour n'utiliser que des liaisons relatives aux valeurs du tableau, tu peux utiliser les formules suivantes:
En A2:
Code:
=SI(NB.SI(Tableau1[Libellé article];[@[Libellé article]])=0;"";INDEX(Tableau1[Fournisseur];MIN(SI(([@[Libellé article]]=Tableau1[Libellé article])*([@[P.U.
HT+Drt]]=Tableau1[HT+Drt]);LIGNE(Tableau1[Fournisseur])-1));1))
En B2:
Code:
=SI(NB.SI(Tableau1[Libellé article];[@[Libellé article]])=0;"";INDEX(Tableau1[Référence];MIN(SI(([@[Libellé article]]=Tableau1[Libellé article])*([@[P.U.
HT+Drt]]=Tableau1[HT+Drt]);LIGNE(Tableau1[Référence])-1));1))
 
Ces formules fonctionnent ! 🙂
J'ai essayé du coup en D2 :
=SI(NB.SI(Tableau1[Libellé article];[@[Libellé article]])=0;"";INDEX(Tableau1[HT+Drt];MIN(SI(([@[Libellé article]]=Tableau1[Libellé article])*([@[P.U.
HT+Drt]]=Tableau1[HT+Drt]);LIGNE(Tableau1[HT+Drt])-1));1)) mais ça ne fonctionne pas. Qu'est-ce qui clocherait d'après toi ?
 
La formule serait plutôt:
Code:
=SI(NB.SI(Tableau1[Libellé article];[@[Libellé article]])=0;"";MIN(SI([@[Libellé article]]=Tableau1[Libellé article];Tableau1[HT+Drt])))
Mais, le problème est que tous les calculs associés risques de te renvoyer des erreurs (qu'il faudrait traité avec une fonction SIERREUR() pour les masquer), tu peux aussi le faire en personnalisant le format des cellules:
- Clic droit, "Format de cellule..."
- Dans l'onglet "Nombre", sélectionner "Personnalisé"
- Dans le champ "Type :", rajouter 2 points virgules ";"
 
Les 2 ; fonctionnent très bien ! Merci ! Je ne vais pas me compliquer plus la tâche avec une formule supplémentaire du coup 🙂
Concernant la liste déroulante créée grâce à la validation des données, n'y aurait-il pas un meilleur moyen pour faire dérouler les articles ? Je demande ça car j'ai près de 3 000 libellés et je ne la trouve pas très pratique à l'usage.
 
- 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

Discussions similaires

Q
Réponses
6
Affichages
3 K
Qu3nt1
Q
Retour