Trier colonnes en conservant les lignes

  • Initiateur de la discussion Initiateur de la discussion lovista
  • 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 !

lovista

XLDnaute Nouveau
Bnrj à tous
Mon intutilé n'est pas très claur mais je ne savais pas comment le formuler en quelques mots.
En fait j'ai une liste avec N°,nom,prénom,adresse,etc sur chaque ligne.
Je voudrais trier tout cela par le N° mais que ce soit toujours la même personne en face du N° car pour le moment ça me donne:
exemple:
3 a z
1 b y
2 c x

après tri :
1 a z
2 b y
3 c x

et je voudrais que ca donne :
1 b y
2 c x
3 a z

Merci de votre aide !
 
Re : Trier colonnes en conservant les lignes

Bonjour lovista,
peux-tu nous faire parvenir un exemple avec une dizaine de données anonymes, il sera plus facile de te présenter un résultat opérationnel 🙂
Ton problème n'a pas l'air compliqué à priori (compte tenu des informations disponibles)
Cdt
 
Re : Trier colonnes en conservant les lignes

re
Voici ma feuille à trier (sans les noms)
5 Souad 1 BIS RESIDENCE LE ROSSIGNOL
11 Pierre 54 TRAVERSE DU 06 JUIN 1944
12 Laura 3 IMPASSE BRUNET
32 Nicolas 14 RESIDENCE CHANTE COUCOU
34 Audrey 67 RESIDENCE DU MIDI 3EME ETAGE
51 Cédric 33 CHEMIN DE L'OLIVIER
64 Gilles 6 RESIDENCE BEAU SOLEIL
84 Charlotte 59 AVENUE DU GENERAL DE GAULLE
87 Anaïs 20 RUE DU VIEUX PORT
97 Valentin 34 CHEMIN DE LA PINEDE
14 Daniel 9 PETIT CHEMIN DE BOUC

Merci
 
Re : Trier colonnes en conservant les lignes

ou bien par macro, vous pouvez utiliser ceci
Code:
Sub test()
    RowCount = Cells(Cells.Rows.Count, "a").End(xlUp).Row
    Range("A1:C" * RowCount).Select
    Application.CutCopyMode = False
    Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub
 
Re : Trier colonnes en conservant les lignes

Bnjr,
Vous pourriez m'expliquer le code svp ?
Merci, cdlt

en gros c'est un trie sur la premiere colonne
Code:
Sub test()
'compte le nombre de rangee pour la colonne a
    RowCount = Cells(Cells.Rows.Count, "a").End(xlUp).Row
'selectionne la plage
    Range("A1:C" & RowCount).Select
    Application.CutCopyMode = False
'faire un trie dans la colonne a en ordre croissant, pas d'entete
    Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
End Sub
 
Re : Trier colonnes en conservant les lignes

voici la version finale,
Code:
Sub Macro1()
'defusionner
    Columns("A:A").Select
    Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
        :=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
        Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True
'compte le nombre de rangee pour la colonne a
    RowCount = Cells(Cells.Rows.Count, "a").End(xlUp).Row
'selectionne la plage
    Range("A1:H" & RowCount).Select
    Application.CutCopyMode = False
'faire un trie dans la colonne a en ordre croissant, pas d'entete
    Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal

End Sub
 
- 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
5
Affichages
238
  • Question Question
XL 2021 listbox
Réponses
18
Affichages
285
Réponses
38
Affichages
888
Retour