Filtre automàtic VBA | Com s'utilitzen els criteris de filtre automàtic VBA per filtrar dades?

Filtre automàtic VBA d'Excel

El filtre automàtic a VBA s'utilitza com a expressió i la sintaxi per a ell com s'expressa a continuació. Filtre automàtic (camp, criteris 1, operador, criteris 2, llista desplegable) tots els arguments són opcionals. El filtre és útil per filtrar les dades concretes de les dades enormes.

Si sou un usuari habitual, els filtres excel no us resultaran estranys. Algunes de les eines que fem servir al full de treball també s’integren a VBA i l’opció de filtre automàtic és una de les eines importants disponibles a VBA. Com tots sabem, el filtre Excel està disponible a la pestanya de dades.

Mitjançant aquesta opció de filtre podem jugar amb les dades. Si teniu una quantitat mínima de dades i si creieu que no és necessària l'opció de filtre automàtic VBA, podeu continuar utilitzant l'opció de filtre de fulls de treball.

Si teniu una gran quantitat de dades, podeu utilitzar una opció de filtre automàtic per simplificar el flux del procés.

Sintaxi de la funció de filtre automàtic

El filtre automàtic a Excel VBA es pot utilitzar amb un objecte d’interval. Igual que les nostres altres funcions, aquesta també té la seva pròpia sintaxi.

  • Rang: L'interval és simplement en quin interval voleu aplicar el filtre.
  • Camp: Camp significa des de la columna de l'interval que heu seleccionat que voleu filtrar les dades. Es comptarà una columna d’esquerra a dreta.

Per exemple, si el vostre interval és de A1 a D100 i voleu aplicar un filtre per a la columna D, el número de camp és 4 perquè a l'interval seleccionat D hi ha la quarta columna.

Criteris 1: Al camp, heu seleccionat el que voleu filtrar.

  • Operador: Si voleu aplicar més d'un criteri per filtrar les dades, hem d'utilitzar símbols d'operador. Alguns dels codis d'operador són els següents.

xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues.

Criteris 2: Quin és el segon que voleu filtrar juntament amb el criteri 1?

  • Desplegable visible: Voleu que la icona del filtre es mostri cap avall a la columna filtrada. Si voleu mostrar TRUE és l'argument, si no és FALS l'argument.

Com aplicar el filtre mitjançant el filtre automàtic VBA? (amb exemple)

Podeu descarregar aquesta plantilla de filtre automàtic VBA aquí - Plantilla de filtre automàtic VBA

Suposeu a continuació les dades en què esteu treballant.

Ara, utilitzant el codi VBA, aplicarem el filtre. Seguiu els passos següents per aplicar el filtre.

Pas 1: Inicieu el subprocediment donant un nom a la macro.

Codi:

 SubFiltre automàtic_Exemple1 () Final Sub 

Pas 2: el primer la cosa està en quin interval necessitem per aplicar el filtre. En aquest cas, hem d'aplicar l'interval des de l'interval A1 fins a l'E25.

Codi:

 SubFiltre automàtic_Exemple1 () Interval ("A1: E25") Finalització Sub 

Pas 3: Un cop seleccionat l'interval, apliqueu ara l'opció de filtre automàtic.

Codi:

 SubFiltre automàtic_Exemple1 () Interval ("A1: E25") 

No seleccionem cap valor mitjançant un filtre automàtic, sinó que només estem aplicant el filtre en aquest moment.

Executeu el codi amb la tecla F5 o manualment inserirà el filtre per a l'interval seleccionat.

Per tant, ha aplicat un filtre a les dades. Ara veurem com filtrar les dades.

Exemple 1: filtreu les dades mitjançant el filtre automàtic

Penseu en les mateixes dades de l'exemple anterior. Ara hem de filtrar el departament "Finances" de la columna departament.

Pas 1: Després d’aplicar el filtre, el primer argument és esmentar a partir de quina columna filtrem les dades. En aquest cas, hem de filtrar les dades de la columna Departament, de manera que el número de columna és 5.

Codi:

 SubFiltre automàtic_Exemple1 () Interval ("A1: E25"). Camp del filtre automàtic: = 5, finalització del subfull 

Pas 2: El criteri 1 no és res més que el que volem filtrar de la 5a columna. Per tant, hem de filtrar "Finances".

Codi:

 SubFiltre automàtic_Exemple1 () Interval ("A1: E25"). Camp del filtre automàtic: = 5, Criteria1: = Finalització "Finançament" 

Així doncs, tot, executeu aquest codi manualment o mitjançant la tecla F5, només filtrarà "Finances" de la llista.

Exemple # 2: operador al filtre automàtic

Hem vist com filtrar el valor únic. Ara veurem com filtrar diversos elements. Suposem que juntament amb "Finances" voleu filtrar també el departament "Vendes", de manera que podem fer-ho mitjançant Operadors.

Pas 1: Després d'aplicar els primers criteris a l'argument següent, seleccioneu l'operador com a "xlOr".

Codi:

 SubFiltre_Exemple2 () Rang ("A1: E25"). Camp del filtre automàtic: = 5, Criteri1: = "Finançament", Operador: = xlOr Final Sub 

Pas 2: Ara a Criteris 2 mencioneu el valor com a "Vendes".

Codi:

 SubFiltre automàtic_Exemple2 () Interval ("A1: E25"). Camp del filtre automàtic: = 5, Criteria1: = "Finances", Operador: = xlOr, Criteria2: = Finalització "Vendes" 

Pas 3: D'acord, heu executat aquest codi amb la tecla F5 o manualment filtrarà tant "Finances" com "Vendes".

En l’argument Operator, he utilitzat "XlOr" això seleccionarà tots dos "Finances" i "Vendes" sota el filtre.

Exemple 3: filtreu els números mitjançant el filtre automàtic

Mitjançant el símbol de l’operador “XlAnd” també podem filtrar els números. Suposem que des de la columna Temps extra voleu filtrar tots els valors> 1000 però <3000.

Pas 1: el primer la cosa és canviar el camp de 5 a 4.

Codi:

 SubFiltre automàtic_Exemple3 () Interval ("A1: E25"). Camp del filtre automàtic: = 4 Finalització secundària 

Pas 2: Criteris 1 és> 1000.

Codi:

 SubFiltre_Exemple3 () Rang ("A1: E25"). Camp del filtre automàtic: = 4, Criteria1: = "> 1000", finalització del subfull 

Pas 3: Aquí hem de coincidir amb els dos criteris, de manera que utilitzeu "xlAnd" com a operador.

Codi:

 SubFiltre_Exemple3 () Rang ("A1: E25"). Camp del filtre automàtic: = 4, Criteris1: = "> 1000", Operador: = xlI, Finalització sub 

Pas 4: Els criteris 2 seran <3000.

Codi:

 SubFiltre_Exemple3 () Interval ("A1: E25"). Camp del filtre automàtic: = 4, Criteria1: = "> 1000", Operador: = xlAnd, Criteria2: = "<3000" Final Sub 

Ara, si executeu aquest codi manualment o mitjançant la tecla F5, filtrarà tots els valors de la columna Temps extra que són> 1000 però <3000.

Exemple # 4: filtreu des de diferents columnes mitjançant el filtre automàtic

Per filtrar les dades de diferents columnes, hem d’utilitzar un procés diferent. Suposem que voleu filtrar el departament "Finances" i també voleu filtrar els números de sous que són> 25000 però <40000.

Podeu utilitzar el codi següent per fer-ho.

Codi:

 SubFiltre_Exemple4 () Amb rang ("A1: E25"). Camp del filtre automàtic: = 5, Criteria1: = "Finançament". Camp del filtre automàtic: = 2, Criteria1: = "> 25000", Operador: = xlI, Criteria2: = " <40000 "Finalitza amb finalització secundària 

Això filtrarà dues columnes.

Executeu aquest codi amb la tecla F5 o podeu executar-lo manualment.

Coses que cal recordar

  • Proveu diferents combinacions a Operator per obtenir el coneixement del filtre automàtic VBA.
  • Si no esteu segur de què posar, proveu d'utilitzar la gravadora de macros.
  • Si voleu filtrar els valors de text, heu de proporcionar-los entre cometes dobles.
  • Utilitzeu la instrucció WITH per aplicar més d'un filtre de columnes.