VBA AutoFilter | Paano magagamit ang Mga Pamantayan sa VBA AutoFilter upang Salain ang Data?
Excel VBA AutoFilter
Ang AutoFilter sa VBA ay ginagamit bilang isang expression at ang syntax para dito bilang sumusunod sa Expression. Autofilter (Field, Criteria 1, Operator, Criteria 2, Dropdown) lahat ng mga argumento ay opsyonal. Ang filter ay kapaki-pakinabang sa pag-filter ng partikular na data mula sa napakalaking data.
Kung ikaw ay isang regular na gumagamit kung gayon ang mga excel filter ay hindi isang kakaibang bagay para sa iyo. Ang ilan sa mga tool na ginagamit namin sa worksheet ay isinama rin sa VBA at ang pagpipiliang auto filter ay isa sa mga mahahalagang tool na magagamit sa VBA. Tulad ng alam nating lahat ay magagamit ang excel filter sa ilalim ng tab ng data.
Gamit ang pagpipiliang pansala na ito maaari kaming maglaro kasama ang data. Kung nakikipag-usap ka sa isang kaunting halaga ng data at kung sa palagay mo hindi talaga kinakailangan ang pagpipiliang autofilter ng VBA maaari mong ipagpatuloy na gamitin ang pagpipilian ng filter ng worksheet.
Kung nakikipag-usap ka sa isang malaking halaga ng data pagkatapos ay maaari kang gumamit ng pagpipiliang Autofilter upang gawing simple ang daloy ng proseso.
Syntax ng AutoFilter Function
Ang AutoFilter sa Excel VBA ay maaaring magamit sa isang saklaw na object. Tulad ng aming iba pang mga pagpapaandar, mayroon din itong sariling syntax.
- Saklaw: Ang saklaw ay simple sa kung anong saklaw ang nais mong ilapat ang filter.
- Larangan: Ang ibig sabihin ng patlang mula sa aling haligi ng saklaw na napili mo na nais mong i-filter ang data. Ang isang haligi ay bibilangin mula kaliwa hanggang kanan.
Halimbawa, kung ang iyong saklaw ay mula sa A1 hanggang D100 at nais mong maglapat ng isang filter para sa haligi ng D kung gayon ang iyong numero sa patlang ay 4 dahil sa napiling saklaw D ay ang ika-apat na haligi.
Pamantayan 1: Sa patlang, napili mo ang nais mong salain.
- Operator: Kung nais mong maglapat ng higit sa isang pamantayan para sa pag-filter ng data kung gayon kailangan naming gumamit ng mga simbolo ng operator. Ang ilan sa mga code ng operator ay nasa ibaba.
xlAnd, xlOr, xlBottom10Items, xlTop10Items, xlTop10Percent, xlBottom10Percent, xlFilterCellColor, xlFilterDynamic, xlFilterFontColor, xlFilterIcon, xlFilterValues.
Pamantayan 2: Ano ang pangalawang bagay na nais mong salain kasama ang Pamantayan 1?
- Nakikitang Drop Down: Nais mo bang ipakita ang icon ng filter fop down sa na-filter na haligi. Kung nais mong ipakita ang TUNAY ay ang argumento, kung hindi MALI ang pagtatalo.
Paano Mag-apply ng Filter gamit ang VBA AutoFilter? (na may Halimbawa)
Maaari mong i-download ang Template ng VBA AutoFilter na ito - VBA AutoFilter TemplateIpagpalagay sa ibaba ng data kung saan ka nagtatrabaho.
Ngayon sa pamamagitan ng paggamit ng VBA code, ilalapat namin ang filter. Sundin ang mga hakbang sa ibaba upang mailapat ang filter.
Hakbang 1: Simulan ang subprocedure sa pamamagitan ng pagbibigay ng isang pangalan sa macro.
Code:
Sub AutoFilter_Example1 () Tapusin ang Sub
Hakbang 2: Ang una bagay ay nasa kung anong saklaw kailangan namin upang ilapat ang filter. Sa kasong ito, kailangan naming ilapat ang saklaw mula sa saklaw A1 hanggang E25.
Code:
Sub AutoFilter_Example1 () Saklaw ("A1: E25") End Sub
Hakbang 3: Kapag napili na ang saklaw, ilapat na ngayon ang pagpipiliang autofilter.
Code:
Sub AutoFilter_Example1 () Saklaw ("A1: E25"). AutoFilter End Sub
Hindi kami pipili ng anumang mga halaga gamit ang isang autofilter sa halip ay inilalapat lamang namin ang filter sa puntong ito ng oras.
Patakbuhin ang code gamit ang F5 key o manu-manong ipasok nito ang filter para sa napiling saklaw.
Kaya naglapat ito ng isang filter sa data. Ngayon makikita natin kung paano i-filter ang data.
Halimbawa # 1 - I-filter ang Data sa pamamagitan ng Paggamit ng AutoFilter
Isaalang-alang ang parehong data mula sa halimbawa sa itaas. Ngayon kailangan naming i-filter ang departamento ng "Pananalapi" mula sa haligi ng departamento.
Hakbang 1: Matapos mailapat ang filter, ang unang argumento ay ang banggitin mula sa kung aling haligi namin sinasala ang data. Sa kasong ito, kailangan nating salain ang data mula sa haligi ng Kagawaran, kaya ang bilang ng haligi kung 5.
Code:
Sub AutoFilter_Example1 () Saklaw ("A1: E25"). AutoFilter Field: = 5, End Sub
Hakbang 2: Ang Kraytirya 1 ay wala kundi ang nais naming salain mula sa ika-5 haligi. Kaya kailangan nating salain ang "Pananalapi".
Code:
Sub AutoFilter_Example1 () Saklaw ("A1: E25"). Field ng AutoFilter: = 5, Criteria1: = "Pananalapi" End Sub
Kaya't iyon lang, manu-manong patakbuhin ang code na ito o sa pamamagitan ng F5 key i-filter lamang nito ang "Pananalapi" mula sa listahan.
Halimbawa # 2 - Operator sa AutoFilter
Nakita namin kung paano i-filter ang solong halaga. Ngayon makikita natin kung paano mag-filter ng maraming elemento. Ipagpalagay kasama ang "Pananalapi" na nais mong i-filter din ang kagawaran ng "Pagbebenta", upang magawa namin ito sa pamamagitan ng paggamit Mga Operator.
Hakbang 1: Matapos mailapat ang unang pamantayan sa susunod na argumento piliin ang operator bilang "xlOr".
Code:
Sub AutoFilter_Example2 () Saklaw ("A1: E25"). AutoFilter Field: = 5, Criteria1: = "Pananalapi", Operator: = xlOr End Sub
Hakbang 2: Ngayon sa Pamantayan 2 banggitin ang halaga bilang "Sales".
Code:
Sub AutoFilter_Example2 () Saklaw ("A1: E25"). AutoFilter Field: = 5, Criteria1: = "Pananalapi", Operator: = xlOr, Criteria2: = "Sales" End Sub
Hakbang 3: Ok, tapos na patakbuhin ang code na ito gamit ang F5 key o manu-manong i-filter nito ang parehong "Pananalapi" at "Pagbebenta".
Sa argument ng Operator, ginamit ko na "XlOr" pipiliin nito ang pareho "Pananalapi" at "Pagbebenta" sa ilalim ng filter.
Halimbawa # 3 - I-filter ang Mga Numero gamit ang AutoFilter
Gamit ang simbolo ng Operator na "XlAnd" maaari rin nating salain ang mga numero. Ipagpalagay mula sa haligi ng Overtime na nais mong i-filter ang lahat ng mga halaga na> 1000 ngunit <3000.
Hakbang 1: Ang una Ang bagay ay binabago ang Patlang mula 5 hanggang 4.
Code:
Sub AutoFilter_Example3 () Saklaw ("A1: E25"). AutoFilter Field: = 4 End Sub
Hakbang 2: Pamantayan 1 ay> 1000.
Code:
Sub AutoFilter_Example3 () Saklaw ("A1: E25"). Field ng AutoFilter: = 4, Criteria1: = "> 1000", End Sub
Hakbang 3: Dito kailangan naming tumugma sa parehong pamantayan kaya gamitin ang "xlAnd" bilang operator.
Code:
Sub AutoFilter_Example3 () Saklaw ("A1: E25"). AutoFilter Field: = 4, Criteria1: = "> 1000", Operator: = xlAnd, End Sub
Hakbang 4: Ang Pamantayan sa 2 ay <3000.
Code:
Sub AutoFilter_Example3 () Saklaw ("A1: E25"). AutoFilter Field: = 4, Criteria1: = "> 1000", Operator: = xlAnd, Criteria2: = "<3000" End Sub
Ngayon kung patatakbuhin mo ang code na ito nang manu-mano o sa pamamagitan ng key na F5, i-filter nito ang lahat ng mga halaga mula sa haligi ng Overtime na> 1000 ngunit <3000.
Halimbawa # 4 - Salain mula sa Iba't ibang mga Haligi gamit ang AutoFilter
Upang ma-filter ang data mula sa iba't ibang mga haligi, kailangan naming gumamit ng ibang proseso. Ipagpalagay na nais mong i-filter ang departamento ng "Pananalapi" at nais mo ring i-filter ang mga numero ng Salary na> 25000 ngunit <40000.
Maaari mong gamitin ang code sa ibaba ginagawa iyon.
Code:
Sub AutoFilter_Example4 () Sa Saklaw ("A1: E25"). Field ng AutoFilter: = 5, Criteria1: = "Pananalapi" .utoFilter Field: = 2, Criteria1: = "> 25000", Operator: = xlAnd, Criteria2: = " <40000 "Wakas Sa Pagtatapos Sub
Susuriin nito ang dalawang haligi.
Patakbuhin ang code na ito gamit ang F5 key o maaari kang tumakbo nang manu-mano.
Bagay na dapat alalahanin
- Subukan ang iba't ibang mga kumbinasyon sa ilalim ng Operator upang makuha ang kaalaman sa VBA AutoFilter.
- Kung hindi ka sigurado kung ano ang ilalagay subukang gamitin ang macro recorder.
- Kung nais mong i-filter ang mga halaga ng teksto pagkatapos ay kailangan mong ibigay ang mga ito sa dobleng quote.
- Gumamit ng KUNG pahayag upang maglapat ng higit sa isang filter ng haligi.