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

Classer des clients en fonction du pays

Airone784

XLDnaute Occasionnel
Bonjour,

Voici mon problème avec le fichier en pièce jointe. J'ai des clients venant de pays différents et souhaite les classer.
Exemple dans la PJ : mon client Jean vient du Japon, je souhaite que Jean apparaissent en C3. Puis mon client Marc en C4. Idem pour les autres clients des autres pays.

Je voudrais passer par une formule pour faire cela sachant que ma liste de client peut augmenter.
Auriez-vous une idée de comment faire???

Merci pour votre aide.
 

Pièces jointes

  • client_pays.xlsx
    9.6 KB · Affichages: 33

Modeste

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Bonjour Airone784,

Avec une formule matricielle en A3
Code:
=SIERREUR(INDEX($H$1:$H$30;PETITE.VALEUR(SI($I$2:$I$30=A$2;LIGNE($I$2:$I$30));LIGNES($1:1)));"")
Valider avec Ctrl+Shift+Enter, puis recopier en bas et à droite
 
Dernière édition:

Dugenou

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Bonjour,
Une proposition en pj avec une formule matricielle à valider par ctrl + maj prov + enter en A3 puis recopier à droite et vers le bas.

Cordialement

Edit : Oups! même solution, Bonjour Modeste !
 

Pièces jointes

  • airone784.xlsx
    13.7 KB · Affichages: 21
  • airone784.xlsx
    13.7 KB · Affichages: 26
  • airone784.xlsx
    13.7 KB · Affichages: 21

Modeste

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Re,
Bonjour Gérard,
Salut Dugenou

@natorp: sous les versions antérieurs à XL2007, ça devait donner
Code:
=SI(ESTERREUR(INDEX($H$1:$H$30;PETITE.VALEUR(SI($I$2:$I$30=A$2;LIGNE($I$2:$I$30));LIGNES($1:1))));"";INDEX($H$1:$H$30;PETITE.VALEUR(SI($I$2:$I$30=A$2;LIGNE($I$2:$I$30));LIGNES($1:1))))
Toujours à valider avec Ctrl+Shift+Enter
 

Airone784

XLDnaute Occasionnel
Re : Classer des clients en fonction du pays

Re-bonjour à tous,

Merci pour vos solutions qui fonctionnent super bien. Par contre, je peine à comprendre la formule. Du coup (je suis exigeant, désolé) pouvez-vous me la décortiquer pour que je la comprenne bien????

Merci encore.
 

Dugenou

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Bonjour,
le coeur de la formule est
SI($I$2:$I$30=A$2;LIGNE($I$2:$I$30))
si on trouve le pays on renvoie le N° de ligne sinon Faux
Ensuite on appelle les valeurs renvoyées une par une en commençant par la plus petite :
PETITE.VALEUR(SI(...);LIGNES($1:1))))
où le lignes($1:1) va s'incrémenter de 1 en 1 quand on recopie vers le bas
Puis on renvoie le prénom en utilisant la fonction index (dont la zone doit impérativement commencer en ligne 1 puisque le SI renvoie un N° de ligne :
INDEX($H$1:$H$30;PETITE.VALEUR(SI(...))))
Enfin on empeche les valeurs d'erreur de s'afficher avec sierreur(...;"") ou si (esterreur(formule);"";formule)

Cordialement
 

Modeste geedee

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Bonsour® Airone784, Luc
autre proposition sans Matricielle
mais nécessité de trier la colonne I

en A3 :
Code:
=SI((LIGNE()-2)<=NB.SI($I$2:$I$100;A$2);DECALER($H$1;LIGNE()-3+EQUIV(A$2;$I$2:$I$100;0););"")

étendre formule vers le bas et vers la droite autant que nécessaire...
 

david84

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Bonjour,
formule moins longue à condition de laisser la 1ère ligne vide :
Code:
=INDEX($H$1:$H$12;MIN(SI(($I$3:$I$12=A$3)*(NB.SI(A$3:A3;$H$3:$H$12)=0);LIGNE($I$3:$I$12))))&""
A+
 

Modeste

XLDnaute Barbatruc
Re : Classer des clients en fonction du pays

Re²,
Bonjour Modeste geedee
Salut David
... quelle foule!

En complément des explications fournies par Dugenou:
 

Airone784

XLDnaute Occasionnel
Re : Classer des clients en fonction du pays

Ok. donc du fait de se mettre en matricielle, excel teste toutes les cellules de la zone définie soit I2:I30. C'est bien ça ???
Super intéressante ces explications.

Merci aussi aux autres contributeurs qui m'apportent des solutions qui fonctionnent bien également.
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…