Déplacer des cellules selon conditions

Re bonjour à tous,

Je souhaite à partir d'un tableau rempli, que selon 2 conditions cette cellule soit copié sur une autre feuil à un endroit précis

dans le fichier ci joint vous trouverez un tableau avec en feuil2 des résultats commerciaux d'un magasin.

Colonne C rang famille de produit(classement) par le chiffre d'affaires

Colonne D prog CA

Il y a 4 cas

cas 1 rang < rang magasin (donc mieux classé) mais regression de CA

Cas 2 Rang > rang magasin (donc moins bien classé) et regression de CA

Cas 3 rang> rang magasin mais progression de CA

Cas 4 Rang< rang magasin et progression de CA

Mon souhait serait qu'en fonction du cas la famille de produit se retrouve dans la bonne case sur la feuil3

J'espère avoir été clair

Merci de votre aide

13test-rang-1.xlsx (16.72 Ko)

voici le fichier

Bonjour,

Ci-contre les formules toujours en matricielle pour la première occurrence rencontrée à valider par CTRL+SHIFT+ENTER :

=SIERREUR(INDEX(Feuil2!$B$10:$B$15;PETITE.VALEUR(SI((Feuil2!$C$10:$C$15<Feuil2!$C$5)*(Feuil2!$D$10:$D$15<0);(LIGNE(INDIRECT("1:"&LIGNES(Feuil2!$B$10:$B$15)))));1));"") 'CAS 1
=SIERREUR(INDEX(Feuil2!$B$10:$B$15;PETITE.VALEUR(SI((Feuil2!$C$10:$C$15>Feuil2!$C$5)*(Feuil2!$D$10:$D$15<0);(LIGNE(INDIRECT("1:"&LIGNES(Feuil2!$B$10:$B$15)))));1));"") 'CAS 2
=SIERREUR(INDEX(Feuil2!$B$10:$B$15;PETITE.VALEUR(SI((Feuil2!$C$10:$C$15>Feuil2!$C$5)*(Feuil2!$D$10:$D$15>0);(LIGNE(INDIRECT("1:"&LIGNES(Feuil2!$B$10:$B$15)))));1));"") 'CAS 3
=SIERREUR(INDEX(Feuil2!$B$10:$B$15;PETITE.VALEUR(SI((Feuil2!$C$10:$C$15<Feuil2!$C$5)*(Feuil2!$D$10:$D$15>0);(LIGNE(INDIRECT("1:"&LIGNES(Feuil2!$B$10:$B$15)))));1));"") 'CAS 4

Pour les autres occurrences, seul le rang change.

La gestion d'erreur a été simplifiée par un SIERREUR au lieu d'un NB.SI.ENS afin "d'alléger" la formule.

Bon courage.

Cdlt,

merci ergotamine,

je testerai dès demain matin.

Par contre au risque de passer pour un blaireautu veux dire par "pour les autres occurrences seul le rang change ?

Merci de ton aide en tout cas

Bonjour,

Vous avez 3 à 4 valeurs par catégorie. Chaque Xième valeur qui correspond aux critères recherchés est renvoyée via la fonction PETITE.VALEUR qui requiert le Xième en tant qu'argument et qui se trouve à la fin de la formule (le dernier chiffre de la formule). Par exemple pour la 2ème valeur du cas 1 alors la formule serait :

=SIERREUR(INDEX(Feuil2!$B$10:$B$15;PETITE.VALEUR(SI((Feuil2!$C$10:$C$15<Feuil2!$C$5)*(Feuil2!$D$10:$D$15<0);(LIGNE(INDIRECT("1:"&LIGNES(Feuil2!$B$10:$B$15)))));2));"")

Cdlt,

Parfait Ergotamine !!!!!

Merci beaucoup et bon week end :)

Rechercher des sujets similaires à "deplacer conditions"