Trier en une fois deux lots de colonne et lignes

Résolu/Fermé
Utilisateur anonyme - 21 oct. 2019 à 18:05
 Utilisateur anonyme - 22 oct. 2019 à 13:44
Bonjour,

Je voudrai trier les colonnes D2:N20 et D22:N40 tout ça sur la même macro, est-ce possible, le tri se ferait en changeant de feuille car j'ai 10 feuilles, je veux dire que quand je vais sur la 2 et que je retourne sur la 1 le tri est fait. Merci


Configuration: Windows / Chrome 77.0.3865.120
A voir également:

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
Modifié le 21 oct. 2019 à 18:38
Bonjour,

Tu te sers de l'enregistreur de macro pour faire ton tri.

Ensuite tu vas dans ThisWorkbook et tu mets ceci:

Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Macro1 ' a adapter le nom de la macro que tu as obtenu avec l'enregistreur
End Sub



Voilà c'est simple, à chaque changement de feuille la macro se déclenchera


0
Utilisateur anonyme
22 oct. 2019 à 09:54
Bonjour,
Cela fonctionne pour les D2:N20 Mais pas pour les lignes D22:N40, comment faire pour que cela trie, la partie 1 (D2:N20) et la partie 2 (D22:N40).
Merci.
Salutations.
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
22 oct. 2019 à 10:44
Essaie avec 2 macros

et tu changes cela comme ceci:
Option Explicit

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Macro1 ' a adapter le nom de la macro que tu as obtenu avec l'enregistreur
Macro2 ' a adapter le nom de la macro que tu as obtenu avec l'enregistreur
End Sub


@+ Le Pivert
0
Utilisateur anonyme
22 oct. 2019 à 13:44
Bonjour,
J'ai trouvé une autre solution, par diablo
diablo13800 772
22 oct. 2019 à 10:55
0
Merci
Bonjour,

Vous devriez essayer de l'écrire en deux lignes:
.Range("D3:P22").Sort key1:=.Range("D3"), order1:=xlAscending, Header:=xlNo
.Range("D23:P41").Sort key1:=.Range("D23"), order1:=xlAscending, Header:=xlNo
Je vous remercie, je vais essayé votre solution pour voir qu'elle est la mieux.
Cordialement
0