Jak zkontrolovat, zda je v listu v aplikaci Excel použit filtr?
Pokud list obsahuje velké množství dat, je možné zkontrolovat, zda je filtrování použito v určeném sloupci nebo v celém listu, aniž byste museli ručně kontrolovat sloupce jeden po druhém? V tomto tutoriálu vám ukážeme dva kódy VBA, které tento úkol zvládnou.
Zkontrolujte, zda je v určitém sloupci použit filtr
Zkontrolujte, zda je v listu použit filtr
Zkontrolujte, zda je v určitém sloupci použit filtr
Chcete-li zkontrolovat, zda je určitý sloupec filtrován, může vám pomoci kód VBA v této části.
1. Otevřete list, u kterého chcete zkontrolovat, zda je v určitém sloupci použit filtr.
2. zmáčkni Další + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.
3. V Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Vložit > Modula poté zkopírujte následující kód VBA v okně Modul (Kód).
Kód VBA: Zkontrolujte, zda je zadaný sloupec filtrován
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
Poznámka: V kódu VBA číslo 3 v tomto řádku"xColumn = 3” znamená třetí sloupec v aktuálním listu. Pokud chcete zkontrolovat, zda je použit filtr sloupec E, změňte číslo 3 na 5.
4. zmáčkni F5 klíč ke spuštění kódu.
Pokud je zadaný sloupec filtrován, zobrazí se následující dialogové okno.
V opačném případě se zobrazí následující dialogové okno.
Zkontrolujte, zda je v listu použit filtr
Pokud chcete zkontrolovat, zda je v listu použit filtr, vyzkoušejte kód VBA v této části.
1. Otevřete list, u kterého chcete zkontrolovat, zda je použit filtr.
2. zmáčkni Další + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.
3. V Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Vložit > Modula poté zkopírujte následující kód VBA do souboru Modul (kód) okno.
Kód VBA: Zkontrolujte, zda je v listu použit filtr
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. Poté stiskněte F5 klíč ke spuštění tohoto kódu, pokud list obsahuje filtrování, zobrazí se následující dialogové okno.
V opačném případě se zobrazí následující dialogové okno.
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!