Tri d'un tableau sous excel
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-
-
@Pofdonc tu possède un icone sur ta barre des tache ou il y a un a et un z et le contraire, attend je recherche cette icone pour te le montrer car le tri es tou à fait possible. donne moi ton adresse msn, et je t'enverrai une image qui te l'explique
-
@MaxkinderJe vois bien une icone A à Z mais elle sert à trier par ordre alphabétique une colonne et moi mon tableau a plusieurs colonnes.
Voila mon adresse msn : nbk_pof@msn.com
Merci pour tout ! -
@Pofok ba il fo que tu selectionne tou le tableau en commençan par la colone que tu ve trié par odre alfabétique, le reste suivra ton odre.
-
@Maxkinderbonjour
j ai essayé mais on peut trier ou la colonne ou la ligne pas tout en même temps
si possible je suis preneur
-
-
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 -
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.