Microsoft 365 Classement de données de colonne par ordre croissant

  • Initiateur de la discussion Initiateur de la discussion Lucho63
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lucho63

XLDnaute Nouveau
Bonjour,
Je souhaite classer des données de colonne (par paire) par ordre croissant ?

Exemple:
Sur 6 colonnes j'ai :
1Col: Lapin
2Col: 1
3Col: Chien
4Col: 5
5Col: Chat
6Col: 3
et je veux les transposer par 2 par ordre croissant
Résultats su 6 colonnes
Chien 5 Chat 3 Lapin 1

Merci d'avance
 
Bonjour Lucho63, le fil,

Dans ton post #3 : « Je vois qu'il est inscrit VB au dessus du code, est-ce un code en langage VBA ? »

* Le langage de programmation des applications Office est bien le VBA : Visual Basic for Applications.

* Le VB orange que tu as vu est mis par la balise « CODE=vb » ; on l'utilise pour du code VBA, mais c'est pas obligé ; par exemple, certains l'utilisent pour mettre une formule Excel ; et c'est justement le cas dans le post #2 de JHA : c'est bien une formule Excel et pas du VBA ; par exemple, il y a =SI( et pas If ; il y a COLONNE() et pas Column ; il y a MOD(a;b) et pas a Mod b ; il y a GRANDE.VALEUR() qui est une fonction Excel que VBA ne connaît pas ; à toi de trouver les autres indices... 😜​

soan
 
Bonjour à tous,

Les deux solutions proposées ne donne pas le bon résultat en cas d'égalité.
Ci joint une seule formule matricielle qui semble donner un résultat plus cohérent.
En "G1":
VB:
=SI(MOD(COLONNE();2)=0;ENT(GRANDE.VALEUR(SI(MOD(COLONNE($A$1:$F$1);2)=0;$A$1:$F$1+COLONNE($A$1:$F$1)/10^9);(COLONNE()-6)/2));INDEX($A$1:$F$1;;EQUIV(GRANDE.VALEUR(SI(MOD(COLONNE($A$1:$F$1);2)=0;$A$1:$F$1+(COLONNE($A$1:$F$1)/10^9));(COLONNE()-5)/2);$A$1:$F$1+(COLONNE($A$1:$F$1)/10^9);0)-1))
copier vers la droite.

JHA
 

Pièces jointes

Bonjour le forum, JHA

Dans la même idée que l'exemple de Lucho, j'essaie de modifier la formule pour l'adapter à mon fichier. j'ai fait un exemple et la formule matricielle est tellement complexe que je suis complètement perdu et incapable de la modifier et l'adapter.
JHA, serait il possible de m'aider ?
Merci
 

Pièces jointes

Bonjour à tous,

Je reconnais la formule n'est pas simple du tout et il y a certainement mieux.
VB:
=SI(MOD(COLONNE();2)=1;GRANDE.VALEUR(SI(MOD(COLONNE($C$12:$J$12);2)=0;$C$12:$J$12+COLONNE($C$12:$J$12)/10^9);(COLONNE()-5)/2);INDEX($C$12:$J$12;;EQUIV(GRANDE.VALEUR(SI(MOD(COLONNE($C$12:$J$12);2)=0;$C$12:$J$12+(COLONNE($C$12:$J$12)/10^9));(COLONNE()-4)/2);$C$12:$J$12+(COLONNE($C$12:$J$12)/10^9);0)-1))

JHA
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
22
Affichages
1 K
Retour