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

XL 2013 tri croissant sur données dans une cellule concaténée

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 !

blond2comet

XLDnaute Nouveau
Bonjour à tous,

J'ai des cellules avec des données du type :
720 / 440 / 940 / 1200 / 231 / 100 ...
Je souhaiterai trier les données par ordre croissant mais en les gardant dans une seule cellule.
Mon problème réside dans le fait que mon nombre de "chiffres /" est différent à chaque fois et parfois peut monter à une centaine.

Ci-joint un petit fichier excel exemple.

Merci par avance pour votre aide.
 

Pièces jointes

Bonjour blond2comet, mapomme,

Même chose en utilisant la macro bien connue Quick sort :
Code:
Function Classer$(x)
If x = "" Then Exit Function
x = Split(x, "/")
tri x, 0, UBound(x)
Classer = Join(x, "/")
End Function

Sub tri(a, gauc, droi) ' Quick sort
Dim ref, g, d, temp
ref = Val(a((gauc + droi) \ 2))
g = gauc: d = droi
Do
    Do While Val(a(g)) < ref: g = g + 1: Loop
    Do While ref < Val(a(d)): d = d - 1: Loop
    If g <= d Then
      temp = a(g): a(g) = a(d): a(d) = temp
      g = g + 1: d = d - 1
    End If
Loop While g <= d
If g < droi Then Call tri(a, g, droi)
If gauc < d Then Call tri(a, gauc, d)
End Sub
A+
 

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

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