Tri d'un tableau sous excel
Pof
-
Ivan-hoe Messages postés 433 Date d'inscription Statut Membre Dernière intervention -
Ivan-hoe Messages postés 433 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit soucis sur Excel : j'ai un tableau de plusieurs lignes et plusieurs colonnes et je voudrais trier ce tableau par ordre alphabétique en gros voilà ce que j'ai :
i b g
c e d
a f h
et voilà ce que je voudrais avoir :
a b c
d e f
g h i
Merci davance pour votre aide !
J'ai un petit soucis sur Excel : j'ai un tableau de plusieurs lignes et plusieurs colonnes et je voudrais trier ce tableau par ordre alphabétique en gros voilà ce que j'ai :
i b g
c e d
a f h
et voilà ce que je voudrais avoir :
a b c
d e f
g h i
Merci davance pour votre aide !
Configuration: Windows XP Firefox 3.0
6 réponses
-
kel version de exel tu as ?
-
Bonjour
envoies moi ton tableau si tu veux que je regarde guygauci@free.fr
cordialement -
Oui j'avais déjà essayé tous les tris proposés par Excel c'est pour ca que j'ai posté ce message : il faut faire une macro pour ce genre de tri et je ne suis pas programmeur donc j'en appel à votre aide !
-
Salut Pof et les autres,
c'est effectivement possible avec une petite procédure en VBA.
Avant de la lancer, sélectionne la plage de cellules que tu veux trier. Ca marche même pour des plages de cellules non contigües.
I.Sub TrierTableau() Dim Cellule As Range, i As Integer, OK As Boolean Dim Tableau() As Variant, Intermed As Variant 'vérifier la plage sélectionnée If MsgBox("Tableau = " & Selection.Address(False, False), vbOKCancel) = vbCancel _ Then Exit Sub 'Entrer les valeurs dans un tableau ReDim Tableau(Selection.Count - 1) For Each Cellule In Selection Tableau(i) = Cellule.Value i = i + 1 Next Cellule 'Trier les valeurs dans le tableau While OK = False OK = True For i = 0 To UBound(Tableau) - 1 If Tableau(i + 1) < Tableau(i) Then Intermed = Tableau(i + 1) Tableau(i + 1) = Tableau(i) Tableau(i) = Intermed OK = False Exit For End If Next i Wend 'Rendre les valeurs sur la feuille i = 0 For Each Cellule In Selection Cellule.Value = Tableau(i) i = i + 1 Next Cellule End Sub -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Salut Ivan-hoe !
et surtout merci beaucoup ca marche super ta macro
javais commencé à me faire un petit truc mais c'était loin d'être aussi pro que toi !
encore merci ! -
Salut Pof,
ça n'a rien de pro, c'est aussi de la bidouille. L'essentiel, c'est que ça marche, non ?
Et désolé si je t'ai gâché le plaisir de passer des heures à trouver par toi-même ;-)
I.