Masquage des marqueurs sélectionnés de la fonction de filtrage automatique avec Excel VBA

Vous n’avez pas besoin de mentionner que la fonction Autofiltr dans Excel est l’une des plus utilisables. Rien ne permet une analyse ou un filtrage plus rapide. Le seul problème associé à cette fonctionnalité concerne les flèches dirigées dans chaque colonne dirigée par un point. Dans la plupart des situations, ce n’est pas grave. Mais que faire si vous voulez empêcher les utilisateurs d’utiliser Autofiltre pour les colonnes sélectionnées? Par défaut, la fonction de filtrage automatique place les flèches dirigées vers le point de chaque colonne.
Voici la bonne nouvelle: grâce à un peu de VBA, vous pouvez masquer les plans sélectionnés précédemment placés par la fonction Autofiltre.

Comment ca marche?
À l’aide de l’objet Filtre automatique dans VBA, vous pouvez déterminer l’étendue de la fonction Filtre automatique. Voici un exemple:

Une fois le filtre automatique appliqué, certaines opérations peuvent être effectuées sur chacune des colonnes – il vous suffit de l’indiquer. Pour effectuer, par exemple, l’action sur la troisième colonne de la plage couverte par le filtre automatique, entrez:
Plage (“C6: H10”). Champ de filtre automatique: 3

Un peu de VBA vous permettra de masquer certaines averses de la fonction AutoPilot

Vous pouvez effectuer de nombreuses opérations dans le domaine de la fonction Filtre automatique. Dans ce scénario, nous couvrirons le masquage de fonctions dans le troisième champ. Le paramètre VisibleDropDown sera utilisé à cette fin. Si vous définissez sa valeur sur False, la flèche cesse d’être visible.
Range(“C6: H10”).AutoFilter Field:3, VisibleDropDown:=False
Voici un exemple de macro dans laquelle le filtre automatique est activé pour la première fois, puis tous les plans sont masqués (à l’exception de ceux des premières et dernières colonnes).

Sub FonctionFiltrage()
With Range("C6:H10")
.AutoFilter
.AutoFilter Field:=1, VisibleDropDown:=True
.AutoFilter Field:=2, VisibleDropDown:=False
.AutoFilter Field:=3, VisibleDropDown:=False
.AutoFilter Field:=4, VisibleDropDown:=False
.AutoFilter Field:=5, VisibleDropDown:=False
.AutoFilter Field:=6, VisibleDropDown:=True
End With
End Sub

 


NOTE
Non seulement la plage spécifiée est indiquée, mais également chaque champ. Lorsque vous implémentez ce code pour vos propres applications, il doit correspondre à votre ensemble de données.
Comment utiliser la macro?
Pour implémenter cette macro, vous pouvez copier et coller son code en mode standard. À cette fin:
1. Utilisez les touches Alt + F11 pour activer Visual Basic Editor.
2. Dans la fenêtre Projet, cliquez avec le bouton droit sur le nom du projet ou de la feuille de calcul.
3. Sélectionnez Insérer / Module.
4. Tapez ou collez le code.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x