Comment filtrer des données simplement en cliquant sur le contenu d'une cellule dans Excel ?
Normalement, dans Excel, vous pouvez appliquer la fonction Filtre pour filtrer les données selon vos besoins. Cependant, dans cet article, je vais expliquer comment filtrer des données simplement en cliquant sur une valeur de cellule. Prenons les données suivantes comme exemple : lorsque je double-clique sur la cellule A2, tous les enregistrements correspondants basés sur cette valeur cliquée seront immédiatement filtrés, comme illustré dans la capture d'écran ci-dessous.
Filtrer des données simplement en cliquant sur une valeur de cellule avec un code VBA
Filtrer des données simplement en cliquant sur une valeur de cellule avec un code VBA
Ici, je vais vous fournir un code VBA pour filtrer des données en cliquant sur une cellule. Veuillez suivre les étapes ci-dessous :
1. Tout d'abord, attribuez un nom de plage à vos données. Entrez un nom de plage dans la Zone de nom, puis appuyez sur la touche Entrée, voir capture d'écran :
2. Faites un clic droit sur l'onglet de la feuille que vous souhaitez filtrer en cliquant sur une cellule, puis choisissez Afficher le code dans le menu contextuel. Dans la fenêtre Microsoft Visual Basic for Applications qui s'ouvre, copiez et collez le code suivant dans le Module vide :
Code VBA : Filtrer des données en cliquant sur une valeur de cellule :
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'Updateby Extendoffice
Dim rgTable As Range
Dim rgData As Range
Dim xColumn As Integer
On Error Resume Next
Application.ScreenUpdating = False
Set rgTable = Range("mydata")
With rgTable
Set rgData = .Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count)
If Not Application.Intersect(ActiveCell, rgData.Cells) Is Nothing Then
xColumn = ActiveCell.Column - .Column + 1
If ActiveSheet.AutoFilterMode = False Then
.AutoFilter
End If
If ActiveSheet.AutoFilter.Filters(xColumn).On = True Then
.AutoFilter Field:=xColumn
Else
.AutoFilter Field:=xColumn, Criteria1:=ActiveCell.Value
End If
End If
End With
Set rgData = Nothing
Set rgTable = Nothing
Application.ScreenUpdating = True
End Sub
Remarque : Dans le code ci-dessus, mydata est le nom de plage que vous avez créé pour votre plage de données, veuillez le modifier selon vos besoins.
3. Ensuite, enregistrez et fermez la fenêtre de code. Maintenant, lorsque vous double-cliquez sur n'importe quelle cellule de la plage de données que vous souhaitez filtrer, ses enregistrements correspondants seront filtrés comme illustré dans la capture d'écran ci-dessous :

Découvrez la magie d'Excel avec Kutools AI
- Exécution intelligente : Effectuez des opérations sur les cellules, analysez les données et créez des graphiques, le tout piloté par des commandes simples.
- Formules personnalisées : Générez des formules adaptées pour rationaliser vos flux de travail.
- Codage VBA : Écrivez et implémentez du code VBA sans effort.
- Interprétation des formules : Comprenez facilement des formules complexes.
- Traduction de texte : Surmontez les barrières linguistiques dans vos feuilles de calcul.
Plus d'articles connexes :
Comment changer la valeur d'une cellule en cliquant dessus ?
Comment trier les données d'une colonne en cliquant sur l'en-tête 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 !