SI(ET ou bien SI(ET syntaxe ?

Résolu
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je cherche à mettre deux condition SI(ET dans une condition SI(OU.

Pouvez vous corrigé ma syntaxe s'il vous plait :
=si(ou(si(et(a2="Femme";b2>60));si(et(a2="Homme";b2>65));remise*g2))

Merci d'avance...

6 réponses

alexdu17200 Messages postés 1302 Date d'inscription   Statut Membre Dernière intervention   836
 
Salut, j'ai indenté ton code pour voir où çà pourrait clocher

=SI(
OU(
SI(
ET(
A2="FEMME";B2>60
)
);
SI(
ET(
A2="HOMME";B2>65
)
);
REMISE*G2
)
)

On peut voir que ton 3ème SI (celui souligné) n'a qu'une condition et pas de valeur à afficher si true ou false.
Et je ne vois pas trop en quoi ton
REMISE*G2
est une condition. Çà pourrait être un oubli de parenthèses et/ou points-virgules?
0
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
C cool merci,

En fait, si l'une ou l'autre condition est True alors remise*g2
donc la remise est multiplié par g2 que si l'une ou l'autre est true ou me manquerai-t-il quelque chose ?
0
alexdu17200 Messages postés 1302 Date d'inscription   Statut Membre Dernière intervention   836
 
Là, comme çà à part ce que je t'ai dit, mais du coup, si tu as une ET() avec une seule condition, il vaut mieux passait par un simple SI()
Si tu veux tu n'as qu'à reposter ton code (après modification) pour qu'on voit si c'est bon.
0
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Voici le nouveau code :
=si(ou(si(a2="Femme";si(b2>60;si(a2="Homme";si(b2>65))));remise*g2))

Je pense avoir un problème de parenthèse ou pas lol
0
alexdu17200 Messages postés 1302 Date d'inscription   Statut Membre Dernière intervention   836
 
=SI(
OU(
SI(
A2="FEMME";
SI(
B2>60;
SI(
A2="HOMME";
SI(
B2>65
)
)
)
);
REMISE*G2
)
)

Je comprends pas trop tes SI() imbriqués, si c'est que tu veux vérifier que ces 3 conditions sont vraies, utilise la fonction ET() (ex: ET(A2="FEMME";B2>60))
En fait, ta fonction doit faire quoi concrètement?
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour Nadong,

Plutôt que donner une formule qui ne retourne pas le résultat attendu, il serait préférable que tu expliques ce que tu cherche à faire.
Quelles sont les données d'entrée ? Quel est le test à effectuer ?
Exemple :
Données d'entrée : Sexe en A2, age en B2, remise (cellule nommée) en %, montant en G2 (€).
Test : si c'est un homme âgé de plus de 65 ans ou une femme âgée de plus de 60 ans, alors on applique la remise, sinon on applique le montant intégral.
 =SI(OU(ET(A2="Femme";B2>60);ET(A2="Homme";B2>65));(1-remise)*G2;G2)

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Ok,

si le sexe = "Femme et age > 60 ou bien si sexe = "Homme" et age > 65 alors remise * prixBillet
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
As-tu testé la formule que je t'ai donnée ?
0
alexdu17200 Messages postés 1302 Date d'inscription   Statut Membre Dernière intervention   836
 
Je confirme, si c'est ce que tu veux faire, tu peux utiliser celle de Gyrus.
0
Nadong Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Cela fonctionne nikel merci bien,
0