Hvordan kontrollerer man, om et filter er anvendt i et regneark i Excel?
For et regneark indeholder en stor mængde data, er det muligt at kontrollere, om filtrering er anvendt i en specificeret kolonne eller i hele regnearket uden manuelt at kontrollere for kolonnerne én efter én? I denne vejledning viser vi dig to VBA-koder til at håndtere denne opgave.
Tjek, om der er anvendt et filter i en bestemt kolonne
Tjek, om der er anvendt et filter i et regneark
Tjek, om der er anvendt et filter i en bestemt kolonne
For at kontrollere, om en bestemt kolonne er filtreret, kan VBA-koden i dette afsnit gøre dig en tjeneste.
1. Åbn det regneark, du vil kontrollere, om der er anvendt et filter i en bestemt kolonne.
2. Tryk på andre + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.
3. i Microsoft Visual Basic til applikationer vindue, skal du klikke på indsatte > Moduler, og kopier derefter følgende VBA-kode i vinduet Modul (Kode).
VBA-kode: Tjek om en specificeret kolonne er filtreret
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
Bemærk: I VBA-koden, nummeret 3 i denne linje"xKolonne = 3” står for den tredje kolonne i det aktuelle regneark. Hvis du vil kontrollere, om der er anvendt et filter i kolonne E, ændre nummeret 3 til 5.
4. Tryk på F5 nøgle for at køre koden.
Hvis den angivne kolonne er filtreret, vil følgende dialogboks dukke op.
Ellers får du følgende dialogboks.
Tjek, om der er anvendt et filter i et regneark
Hvis du vil kontrollere, om et filter er anvendt i et regneark, kan du prøve VBA-koden i dette afsnit.
1. Åbn det regneark, du vil kontrollere, om der er anvendt et filter.
2. Tryk på andre + F11 nøgler til at åbne Microsoft Visual Basic til applikationer vindue.
3. i Microsoft Visual Basic til applikationer vindue, skal du klikke på indsatte > Moduler, og kopier derefter følgende VBA-kode i Modul (kode) vindue.
VBA-kode: Tjek om der er anvendt et filter i et regneark
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. Tryk derefter på F5 nøglen til at køre denne kode, hvis regnearket indeholder filtrering, vil du få en dialogboks som følger.
Ellers får du følgende dialogboks.
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!