Formule Si avec la condition sauf [Résolu/Fermé]

Signaler
Messages postés
4
Date d'inscription
jeudi 25 juin 2015
Statut
Membre
Dernière intervention
29 juin 2015
-
Messages postés
4
Date d'inscription
jeudi 25 juin 2015
Statut
Membre
Dernière intervention
29 juin 2015
-
Bonjour,

Mon problème est le suivant : j'ai ma colonne D ou des numéros d'articles vont être tapés (un par cellule), ma colonne O qui va servir à savoir si la demande pour un article a été effectuée et au quel cas on écrira "solder" dans la cellule, et ma colonne J qui écrira automatiquement "DOUBLON" si un même numéro d'article est tapé 2 fois dans la colonne D sauf si l'article ou les articles de même référence sont soldés.

En gros si 2 même références d'articles non soldés sont dans la colonne D alors il s'écrira DOUBLON dans la colonne J sur leurs lignes respectives.

Sur le forum, j'ai trouvé une formule répondant aux problèmes des doublons :
=SI(NB.SI($A$2:$A$20;A2)>1;"Multiple";"Unique")

Je l'ai ensuite adapté à ma feuille Excel :
=SI($D4<>"";SI(NB.SI($D:$D;$D4)>1;"Doublon";"");"")

Par contre je suis bloqué pour mettre la condition "sauf si il est écrit solder en J4"
Pour ce que j'ai pu lire le "sauf" se traduit par "-", mais je n'arrive pas à l'insérer au bonne endroit pour obtenir ce que je souhaite. Je pense qu'une formule suffit pour régler ceci mais si il faut du VBA je prendrais également.

Par la suite j'ai complété la formule :
=SI(ET($D4<>"";NON(O4="solder"));SI(NB.SI($D:$D;$D4)>1;"Doublon";"");"")

Le problème restant est que tout fonctionne sauf que lorsque 2 références d'un même article sont dans la colonne D, "doublon" apparaît toujours tant que "solder" n'est pas écrit même si l'un des 2 l'est. Alors que je voudrais que "doublon" apparaisse uniquement quand les 2 références ne sont pas soldées et que si une des 2 le devient alors le doublon s'efface pour les 2.

Pas encore trouvé comment faire. Une idée ?

Merci d'avance pour votre intérêt à mon problème.

Cordialement.

2 réponses

Messages postés
25371
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
13 octobre 2020
5 522
Bonjour
essayez avec:

=SI(OU($D4="";O4="solder");"";SI(NB.SI($D:$D;$D4)>1;"Doublon";""))

ou alors pour éliminer doublon si l'une des références seulement est soldée

=SI(OU($D4="";NB.SI.ENS(D:D;D4;O:O;"solder"));"";SI(NB.SI($D:$D;$D4)>1;"Doublon";""))

(NB.SI.ENS ne fonctionne qu'à partir d'Excel 2007. Si ce n'est pas votre cas, remplacer par
;SOMMEPROD(($D$1:$D$1000=D4)*($O$1:$O$1000="solder"))>0))


(N° de lignes obligatoires dans ce cas)
crdlmnt

Errare humanum est, perseverare diabolicum
Messages postés
4
Date d'inscription
jeudi 25 juin 2015
Statut
Membre
Dernière intervention
29 juin 2015

Bonjour Vaucluse,

Tu fais bien de me le dire, je n'ai pas précisé en effet que c'était sur Excel 2010.
J'ai testé chacune de tes formules et soit les doublons disparaissait dès qu'un soldé était écrit ou dès l'écriture d'une référence déjà présente dans la colonne D le "doublon" apparaissait.
Cependant j'ai trouvé la solution recherchée !


=SI(ET($D4<>"";$O4<>"solder";(NB.SI($D:$D;$D4)-NB.SI.ENS($D:$D;$D4;$O:$O;"solder"))>1);"doublon";"")


En tout cas merci à toi pour ton investissement qui a amené à la résolution du problème.

Bonne continuation