Comment trier les données d'une colonne en cliquant sur l'en-tête dans Excel ?
Supposons que j'ai une plage de données, et maintenant, je souhaite trier les données par ordre croissant ou décroissant en cliquant sur n'importe quel en-tête de colonne pour obtenir l'affichage de la capture d'écran suivante. Comment pourriez-vous résoudre cette tâche dans Excel ?
Trier les données en cliquant sur l'en-tête de colonne avec un code VBA
Trier les données en cliquant sur l'en-tête de colonne avec un code VBA
Normalement, dans Excel, vous pouvez utiliser la fonctionnalité Trier pour trier rapidement et facilement les données, mais pour trier les données simplement en cliquant sur une cellule, le code VBA suivant peut vous aider.
1. Faites un clic droit sur l'onglet de la feuille où vous souhaitez trier les données en cliquant sur une cellule, puis choisissez Affichage du code dans le menu contextuel. Dans la fenêtre Microsoft Visual Basic pour applications qui s'ouvre, copiez et collez le code suivant dans le Module vide :
Code VBA : Trier les données en cliquant sur une cellule ou un en-tête de colonne :
Public blnToggle As Boolean
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim LastColumn As Long, keyColumn As Long, LastRow As Long
Dim SortRange As Range
LastColumn = _
Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
keyColumn = Target.Column
If keyColumn > LastColumn Then Exit Sub
Application.ScreenUpdating = False
Cancel = True
LastRow = Cells(Rows.Count, keyColumn).End(xlUp).Row
Set SortRange = Target.CurrentRegion
blnToggle = Not blnToggle
If blnToggle = True Then
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlAscending, Header:=xlYes
Else
SortRange.Sort _
Key1:=Cells(2, keyColumn), Order1:=xlDescending, Header:=xlYes
End If
Set SortRange = Nothing
Application.ScreenUpdating = True
End Sub
2. Ensuite, enregistrez et fermez la fenêtre de code. Maintenant, lorsque vous double-cliquez sur n'importe quelle cellule ou en-tête de colonne dans la plage de données, la colonne sera triée par ordre croissant. Si vous double-cliquez à nouveau, la colonne sera immédiatement triée par ordre décroissant.
Plus d'articles connexes :
Comment modifier la valeur d'une cellule en cliquant dessus ?
Comment filtrer des données simplement en cliquant sur le contenu d'une cellule dans Excel ?
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !