Comment vérifier si un filtre est appliqué dans une feuille de calcul dans Excel ?
Pour une feuille de calcul contenant une grande quantité de données, est-il possible de vérifier si le filtrage est appliqué dans une colonne spécifiée ou dans l'ensemble de la feuille de calcul sans vérifier manuellement les colonnes une par une ? Dans ce tutoriel, nous allons vous montrer deux codes VBA pour gérer cette tâche.
Vérifier si un filtre est appliqué dans une certaine colonne
Vérifier si un filtre est appliqué dans une feuille de calcul
Vérifier si un filtre est appliqué dans une certaine colonne
Pour vérifier si une certaine colonne est filtrée, le code VBA de cette section peut vous rendre service.
1. Ouvrez la feuille de calcul que vous souhaitez vérifier si un filtre est appliqué dans une certaine colonne.
2. appuie sur le autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
3. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module, puis copiez le code VBA suivant dans la fenêtre Module (Code).
Code VBA : vérifier si une colonne spécifiée est filtrée
Sub IsFilter()
'Updated by Extendoffice 20221025
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
xColumn = 3 'Here the number 3 stands for the third column (column C) in the current worksheet
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On And xAF.Range(1, xFNum).Column = xColumn Then
xBol = True
End If
Next xFNum
If xBol Then
MsgBox "The specified column is filled"
Else
MsgBox "The specified column is not filled"
End If
End Sub
Notes: Dans le code VBA, le nombre 3 dans cette ligne "xColonne = 3” représente la troisième colonne de la feuille de calcul en cours. Si vous voulez vérifier si un filtre est appliqué dans colonne E, changez le nombre 3 à 5.
4. appuie sur le F5 clé pour exécuter le code.
Si la colonne spécifiée est filtrée, la boîte de dialogue suivante apparaîtra.
Sinon, vous obtiendrez la boîte de dialogue suivante.
Vérifier si un filtre est appliqué dans une feuille de calcul
Si vous souhaitez vérifier si un filtre est appliqué dans une feuille de calcul, essayez le code VBA dans cette section.
1. Ouvrez la feuille de calcul dont vous souhaitez vérifier si un filtre est appliqué.
2. appuie sur le autre + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.
3. dans le Microsoft Visual Basic pour applications fenêtre, cliquez sur insérer > Module, puis copiez le code VBA suivant dans le Module (Code) fenêtre.
Code VBA : vérifier si un filtre est appliqué dans une feuille de calcul
Sub IsFilterInWorkSheet()
'Updated by Extendoffice 20221024
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
On Error Resume Next
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On Then
xBol = True
Exit For
End If
Next xFNum
If xBol Then
MsgBox "Filter is applied in the curren worksheet"
Else
MsgBox "Filter does not apply in the current worksheet"
End If
End Sub
4. Puis appuyez F5 clé pour exécuter ce code, si la feuille de calcul contient un filtrage, vous obtiendrez une boîte de dialogue comme suit.
Sinon, vous obtiendrez la boîte de dialogue suivante.
Meilleurs outils de productivité bureautique
Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 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
- Activer l'édition 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é de 50% et réduit des centaines de clics de souris chaque jour!