Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2021 Fonction si avec plusieurs conditions

Laetita-Remy

XLDnaute Nouveau
Bonsoir,
J'ai un souci avec l'utilisation de la fonction si.conditions.

Je veux calculer le montant de la remise selon 2 conditions :
- si le CA est > à 10 000 € la remise est de 3 %
- si le CA est > à 10 000 € et que le client est Grossiste, la remise est de 5 %

J'ai fait cette fonction : =SI.CONDITIONS(I3="oui";H3*3%;G3="Grossiste";H3*5%;I3="non";0)

mais cela me calcule du 3 % partout

Help me please !!!!
 

Gégé-45550

XLDnaute Accro
Ci-joint le tableau correspondant
Bonjour,
Essayez :
VB:
=SI.CONDITIONS(ET(I2="oui";G2<>"Grossiste");H2*3%;ET(I2="oui";G2="Grossiste");H2*5%;I2="non";0)
Cordialement,
 

Pièces jointes

  • Test Excel ADandCo.xlsx
    19.8 KB · Affichages: 2

Steff27

XLDnaute Nouveau
bonjour à tous

j'ai besoin d'aide dans cette formule qui sort en erreur. Je pense mettre trompée dans les parenthèses mais je ne trouve pas ou
entre accolade les différents cas de figure des libellés
si contient "b+op";"b + op";"option";"renfort";"OP 1";"OP1";"renfort 1";"renfort1" alors tu inscris RENFORT 1
si contient b + OP 2";"B+OP2;"base + renfort 2";"base+renfort2 alors tu inscris RENFORT 2
sinon BASE

Dans le fichier en exemple, au lieu de la cellule G2 on cherchera grace a C2

=SI.CONDITIONS(OU(ESTNUM(CHERCHE({"b+op";"b + op";"option";"renfort";"OP 1";"OP1";"renfort 1";"renfort1"};$G2)));"RENFORT1";OU(ESTNUM(CHERCHE({"b + OP 2";"B+OP2";"base + renfort 2";"base+renfort2"};$G2)));"RENFORT2";"vrai";"BASE"))

je devrais traduire cette formule en macro

Un grand merci d'avance
Stéphanie
 

Pièces jointes

  • Pb formule.xlsx
    24.3 KB · Affichages: 5

Steff27

XLDnaute Nouveau
Merci job 75
la formule passe effectivement mais elle est KO dans les cas de RENFORT 2
exemple COMIL les 2 OP1 et OP2 remontent en RENFORT 1 ce qui est faux.
Une idée pour revisiter la formule ?

merci d'avance
Stéphanie
 

job75

XLDnaute Barbatruc
La formule est correcte.

Dans le 1er argument on recherche "renfort" donc RENFORT 2 sera trouvé par ce 1er argument.

Qui renvoie donc RENFORT1.

Quand on crée des formules tarabiscotées il faut assumer !
 

Steff27

XLDnaute Nouveau
Je le conçois mais je n'en suis pas responsable dans le sens ou mon fichier reprend des libellés tres différents que je ne peux pas changer à la mano.
il n'y a pas moyen de dire a excel de prendr exactement OP1 OU OP 1 (avec espace) ou OP sans 1 ni 2 etc ...?

Merci de ton aide
 

job75

XLDnaute Barbatruc
il n'y a pas moyen de dire a excel de prendr exactement OP1 OU OP 1 (avec espace) ou OP sans 1 ni 2 etc ...?
Il ne faut pas utiliser CHERCHE mais l'égalité :
Code:
=SI.CONDITIONS(OU({"b+op";"b + op";"option";"renfort";"OP 1";"OP1";"renfort 1";"renfort1"}=$G2);"RENFORT1";OU({"b + OP 2";"B+OP2";"base + renfort 2";"base+renfort2"}=$G2);"RENFORT2";"vrai";"BASE")
 

Discussions similaires

Réponses
6
Affichages
560
  • Question
Microsoft 365 Formule si
Réponses
2
Affichages
227
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…