Salt la conținutul principal
 

Cum se verifică dacă un filtru este aplicat într-o foaie de lucru în Excel?

Autor: Siluvia Ultima modificare: 2023-09-06

Pentru o foaie de lucru care conține o cantitate mare de date, este posibil să verificați dacă filtrarea este aplicată într-o coloană specificată sau în întreaga foaie de lucru fără a verifica manual coloanele una câte una? În acest tutorial, vă vom arăta două coduri VBA pentru a gestiona această sarcină.

Verificați dacă un filtru este aplicat într-o anumită coloană
Verificați dacă un filtru este aplicat într-o foaie de lucru


Verificați dacă un filtru este aplicat într-o anumită coloană

Pentru a verifica dacă o anumită coloană este filtrată, codul VBA din această secțiune vă poate face o favoare.

1. Deschideți foaia de lucru pe care doriți să o verificați dacă este aplicat un filtru într-o anumită coloană.

2. apasă pe Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

3. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Module, apoi copiați următorul cod VBA în fereastra Modul (Cod).

Cod VBA: verificați dacă o coloană specificată este filtrată

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

notițe: În codul VBA, numărul 3 în această linie „xColoană = 3” reprezintă a treia coloană din foaia de lucru curentă. Dacă doriți să verificați dacă este aplicat un filtru coloana E, schimbați numărul 3 la 5.

4. apasă pe F5 tasta pentru a rula codul.

Dacă coloana specificată este filtrată, va apărea următoarea casetă de dialog.

În caz contrar, veți primi următoarea casetă de dialog.


Verificați dacă un filtru este aplicat într-o foaie de lucru

Dacă doriți să verificați dacă un filtru este aplicat într-o foaie de lucru, încercați codul VBA din această secțiune.

1. Deschideți foaia de lucru pe care doriți să o verificați dacă este aplicat un filtru.

2. apasă pe Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

3. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Module, apoi copiați următorul cod VBA în fișierul Modul (Cod) fereastră.

Cod VBA: verificați dacă un filtru este aplicat într-o foaie de lucru

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. Apoi, apăsați F5 pentru a rula acest cod, dacă foaia de lucru conține filtrare, veți obține o casetă de dialog după cum urmează.

În caz contrar, veți primi următoarea casetă de dialog.

Cele mai bune instrumente de productivitate de birou

🤖 Kutools AI Aide: Revoluționați analiza datelor pe baza: Execuție inteligentă   |  Generați codul  |  Creați formule personalizate  |  Analizați datele și generați diagrame  |  Invocați funcțiile Kutools...
Caracteristici populare: Găsiți, evidențiați sau identificați duplicatele   |  Ștergeți rândurile goale   |  Combinați coloane sau celule fără a pierde date   |   Rundă fără Formula ...
Super căutare: VLookup cu mai multe criterii    VLookup cu valori multiple  |   VLookup pe mai multe foi   |   Căutare fuzzy ....
Listă derulantă avansată: Creați rapid o listă derulantă   |  Listă drop-down dependentă   |  Listă derulantă cu selectare multiplă ....
Manager de coloane: Adăugați un număr specific de coloane  |  Mutați coloanele  |  Comutați starea vizibilității coloanelor ascunse  |  Comparați intervale și coloane ...
Caracteristici prezentate: Focus pe grilă   |  Vedere de proiectare   |   Big Formula Bar    Manager registru de lucru și foi   |  Biblioteca de resurse (Text automat)   |  Data Picker   |  Combinați foi de lucru   |  Criptare/Decriptare celule    Trimiteți e-mailuri după listă   |  Super Filtru   |   Filtru special (filtrează bold/italic/barat...) ...
Top 15 seturi de instrumente12 Text Instrumente (Adăuga text, Eliminați caractere,...)   |   50+ Diagramă Tipuri de (Gantt Chart,...)   |   40+ Practic Formule (Calculați vârsta pe baza zilei de naștere,...)   |   19 inserare Instrumente (Introduceți codul QR, Inserați imaginea din cale,...)   |   12 Convertire Instrumente (Numere la cuvinte, conversie valutara,...)   |   7 Merge & Split Instrumente (Rânduri combinate avansate, Celule divizate,...)   |   ... și altele

Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp.  Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...


Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!