XL 2021 si et avec plusieurs choix

gestionnaire

XLDnaute Nouveau
Bonjour à tous,
toujours à la recherche d'amélioration dans mes tableaux, j'ai encore besoin de vos connaissances...

je voudrais que la chaque ligne de la colonne 1, un nom se mette en fonction des cellules des colonnes D et G

c'est à dire que
si en D1 j'ai "cleurie" et en G1 on trouve le texte "lot 1", le mot "volaille" s'affiche en A1
si en D1 j'ai "cleurie" et en G1 on trouve le texte "lot 8", le mot "charcuterie" s'affiche en A1
si en D1 j'ai "cleurie" et en G1 on trouve le texte "lot 5", le mot "laitiers" s'affiche en A1

je joins un morceau de mon tableau pour que, je l'espère, ce soit plus explicite.

merci d'avance pour votre aide.
 

Pièces jointes

  • essai.xlsx
    11.4 KB · Affichages: 5
Solution
Bonjour,
Mieux compris. :)
Alors on peut faire cela : On supprime Cleurie de votre formule et on fait :
VB:
Si("CLEURIE" alors "Formule Cleurie" Sinon Votre formule )
Ce qui donne en A6 :
Code:
=SI(NON(ESTERREUR(CHERCHE("CLEURIE";D6)));SI(D6="CLEURIE SAS ";SI(ESTNUM(CHERCHE("LOT 1";G6));"VOLAILLE";SI(ESTNUM(CHERCHE("LOT 8";G6));"CHARCUTERIE";SI(ESTNUM(CHERCHE("LOT 5";G6));"LAITIERS";""))));
SI(D6="TRANSGOURMET";"Epicerie";SI(D6="CARREFOUR MARKET ";"Epicerie";SI(D6="COLIN RHD ";"Epicerie";SI(D6="FRANCE BOISSONS VOSGES ";"Boissons";SI(D6="BOULANGERIE";"Boulangerie";SI(D6="POMONA PASSION FROID";"Surgelés";SI(D6="POMONA TERRE AZUR LORRAINE";"Fruits et légumes";SI(D6="VITAL FRUITS";"Fruits et légumes";SI(D6="PRO A...

gestionnaire

XLDnaute Nouveau
Bonjour à tous,
Sylvanu, merci pour ta réponse.
Ta solution fonctionne très bien, mais je me rends compte que je n'ai pas donné assez de détails dans ma demande et dans mon fichier.
J'ai essayé de mettre ta formule dans mon tableau, plus exactement, j'ai essayé de l'intégrer à ma formule existante, mais je me rends compte que ce n'est pas aisé de le faire.
Je me retrouve avec "FAUX" dans les lignes qui n'ont pas "CLEURIE SAS" en colonne C et un des "lots" en colonne G...
Je remets mon fichier en pièce joint avec "mon" intégration de ta formule.
Si tu peux regarder et me dire où est mon erreur...

merci d'avance, bon après midi,
 

Pièces jointes

  • essai(1).xlsx
    15.6 KB · Affichages: 5

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Essayez par ex ligne 18 :
VB:
=SI(D28<>"CLEURIE SAS ";"";SI(ESTNUM(CHERCHE("LOT 1";G28));"VOLAILLE";SI(ESTNUM(CHERCHE("LOT 8";G28));"CHARCUTERIE";SI(ESTNUM(CHERCHE("LOT 5";G28));"LAITIERS";""))))
Par contre je ne comprends pas la formule sur la ligne 28 . Pouvez vous expliquer.
 

gestionnaire

XLDnaute Nouveau
bonjour Sylvanu, bonjour à tous,

Comme je le disais au dessus, je n'ai pas donné assez d'éléments dans ma demande...
Ce tableau corresponds aux factures de mes fournisseurs nommés en colonne D et aux lots qu'ils me fournissent en colonne G. Je récupère dans autre tableau les données de ces fournisseurs pour calculer mon coût de revient, mes dépenses par secteur (épicerie, charcuterie, laitiers, etc...).
Tout fonctionnait très bien les années passées car chaque fournisseur avait son secteur mais cette année, "Cleurie" me fournit plusieurs secteurs... d'où mon besoin de modifier ma formule en y ajoutant la deuxième contrainte de lot.
La formule que vous proposez fonctionne très bien si je n'ai qu'un fournisseur, j'ai donc essayé de la "fusionner", "intégrer" à ma formule initiale sur mon tableau général, d'où je pense, votre incompréhension pour la formule de la ligne 28 et des suivantes.

Mon besoin est une formule qui fait:
si d28 = "carrefour" je mets épicerie, si d28="France boisson" je mets Boissons par contre si d28 = "Cleurie" je regarde le lot en g28 et si c'est lot1 je mets volaille, lot 8 je mets charcuterie etc....

merci d'avance pour le retour.
bonne journée et bon week-end
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour,
Mieux compris. :)
Alors on peut faire cela : On supprime Cleurie de votre formule et on fait :
VB:
Si("CLEURIE" alors "Formule Cleurie" Sinon Votre formule )
Ce qui donne en A6 :
Code:
=SI(NON(ESTERREUR(CHERCHE("CLEURIE";D6)));SI(D6="CLEURIE SAS ";SI(ESTNUM(CHERCHE("LOT 1";G6));"VOLAILLE";SI(ESTNUM(CHERCHE("LOT 8";G6));"CHARCUTERIE";SI(ESTNUM(CHERCHE("LOT 5";G6));"LAITIERS";""))));
SI(D6="TRANSGOURMET";"Epicerie";SI(D6="CARREFOUR MARKET ";"Epicerie";SI(D6="COLIN RHD ";"Epicerie";SI(D6="FRANCE BOISSONS VOSGES ";"Boissons";SI(D6="BOULANGERIE";"Boulangerie";SI(D6="POMONA PASSION FROID";"Surgelés";SI(D6="POMONA TERRE AZUR LORRAINE";"Fruits et légumes";SI(D6="VITAL FRUITS";"Fruits et légumes";SI(D6="PRO A PRO";"Epicerie";SI(D6="SICALEST ";"Laitiers";SI(D6="ADAPEI PRO 70 ";"Blanchisserie";SI(D6="VAL NEIGE";"Blanchisserie";SI(D6="RCI";"Entretien";SI(D6="PLG";"Entretien";SI(D6="SOCOBRI SAS";"Entretien";SI(D6="SYNERGIE MAINTENANCE";"Maintenance";SI(D6="CULMINIQUE PRIMEURS";"Fruits et légumes";SI(D6="CHAVEY";"Volaille";SI(D6="FRES ALIMENTAIRES LOT 4";"Surgelés";SI(D6="FRES ALIMENTAIRES LOT 5";"Laitiers";SI(D6="FRES ALIMENTAIRES LOT 6 ";"Epicerie";SI(D6="FRES ALIMENTAIRES LOT 7";"Boissons";SI(D6="FRES ALIMENTAIRES LOT 8";"Viande";""))))))))))))))))))))))))

Mais ça ne marche que ce coup ci. Si demain plusieurs fournisseurs vous fournissent plusieurs secteurs, cela va devenir vraiment ingérable.
Il faudra alors, je pense, passer par une macro VBA, ce qui simplifierait vraiment les choses.
On crée une feuille Paramètres où sont listés l'ensemble des fournisseurs avec leur secteurs respectifs, et en VBA on pioche dans cette liste pour en extraire le secteur lié à la facture.
A retenir pour demain .... :)
 

Pièces jointes

  • essai(V2).xlsx
    15.8 KB · Affichages: 2

gestionnaire

XLDnaute Nouveau
Bonjour Sylvanu, JHA et tous,
Sylvanu, merci pour cette solution qui fonctionne très bien. Je reviendrai vers vous si plusieurs de mes fournisseurs décident de me fournir plusieurs lots...
Je maitrise à peu près le VBA pour remplir des tableaux depuis une feuille excel par contre je ne sais pas faire l'inverse... c'est à dire aller piocher dans un ou plusieurs tableaux pour en remplir un autre.

JHA, merci pour votre réponse, je garde cette solution sous le coude car elle peut me servir pour d'autres tableaux.

encore merci à tous les deux pour vos réponses et votre temps.

bonne journée,
 

Discussions similaires

Statistiques des forums

Discussions
312 207
Messages
2 086 238
Membres
103 162
dernier inscrit
fcfg