Ako odstrániť filter v programe Excel VBA (5 jednoduchých metód)

  • Zdieľajte To
Hugh West

Pri práci s Microsoft Excel , filtrovanie údajov nám umožňuje zobraziť len tie informácie, ktoré chceme. Vždy, keď sa chceme sústrediť na určité prvky vo veľkom súbore údajov alebo tabuliek, táto technika sa nám hodí. Keď je práca hotová, potrebujeme tieto údaje vrátiť do našej tabuľky. hoci Excel už má na to zabudovaný nástroj. Ale VBA je najefektívnejší, časovo úsporný a bezpečný spôsob vykonávania akejkoľvek úlohy v programe Excel. V tomto článku uvedieme niekoľko príkladov na odstránenie filtra v programe Excel VBA.

Stiahnite si cvičebnicu

Môžete si stiahnuť pracovný zošit a precvičovať s nimi.

VBA na odstránenie filtra.xlsm

5 jednoduchých metód na odstránenie filtra v programe Excel VBA

Excel má vstavané nástroje a funkcie na odstránenie filtrov z údajov. Excel VBA môžeme tieto filtre rýchlo odstrániť jednoduchým spustením príkazu VBA Na odstránenie filtrov z údajov použijeme nasledujúci súbor údajov. Súbor údajov obsahuje v stĺpci ID niektorých výrobkov B , názvy výrobkov v stĺpci C a krajinu dodania v stĺpci D . Keďže chceme vidieť len podrobnosti o výrobku Šampón a Kondicionér Teraz predpokladajme, že potrebujeme vymazať tieto vyfiltrované údaje. Použijeme niektoré Makrá Excel VBA Ukážme si príklady na vymazanie týchto filtrov z údajov pomocou Excel VBA .

1. Použitie VBA na odstránenie všetkých filtrov z tabuľky programu Excel

S Excel VBA , môžu používatelia jednoducho používať kód, ktorý funguje ako ponuky Excelu z pásu kariet. Ak chcete použiť VBA kód na odstránenie všetkých filtrov z tabuľky Excelu, postupujme podľa nasledujúcich krokov.

KROKY:

  • Najprv prejdite na Vývojár na páse kariet.
  • Po druhé, z Kód kliknite na kategóriu Visual Basic otvoriť Editor jazyka Visual Basic . Alebo stlačte Alt + F11 otvoriť Editor jazyka Visual Basic .

  • Namiesto toho môžete jednoducho kliknúť pravým tlačidlom myši na pracovný hárok a prejsť na Zobraziť kód Tým sa dostanete aj na Editor jazyka Visual Basic .

  • Táto informácia sa zobrazí v Editor jazyka Visual Basic kde napíšeme naše kódy na vytvorenie tabuľky z rozsahu.
  • Po tretie, kliknite na Modul z Vložte rozbaľovací panel ponuky.

  • Tým sa vytvorí Modul v zošite.
  • A skopírujte a vložte VBA kód uvedený nižšie.

Kód VBA:

 Sub Remove_Filters1() Dim lstObj As ListObject Set lstObj = Sheet1.ListObjects(1) lstObj.AutoFilter.ShowAllData End Sub 
  • Potom spustite kód kliknutím na RubSub alebo stlačením klávesovej skratky F5 .

  • A nakoniec, po vykonaní týchto krokov odstránite všetky filtre z tabuľky Excel na pracovnom hárku.

Vysvetlenie kódu VBA

 Sub Remove_Filters1() 

Sub je časť kódu, ktorá slúži na spracovanie práce v kóde, ale nevráti žiadnu hodnotu. Je tiež známa ako podprocedúra. Našu procedúru teda pomenujeme Remove_Filters1() .

 Dim lstObj As ListObject 

Vyhlásenie premennej.

 Set lstObj = Sheet1.ListObjects(1) 

VBA Set nám jednoducho umožňuje vyhnúť sa tomu, aby sme pri spúšťaní kódu museli znova a znova zadávať rozsah, ktorý potrebujeme vybrať. Nastavíme teda odkaz na prvú tabuľku v hárku.

 lstObj.AutoFilter.ShowAllData 

Tento riadok kódu odstráni všetky filtre pre všetky údaje.

 Koniec Sub 

Tým sa postup ukončí.

Prečítajte si viac: Ako odstrániť filter v programe Excel (5 jednoduchých & Rýchle spôsoby)

2. Vymazanie všetkých filtrov tabuľky Excel na liste pomocou VBA

Pozrime sa na ďalší príklad využitia programu Excel VBA na odstránenie všetkých filtrov tabuľky Excel na hárku. Na tento účel postupujte podľa nasledujúcich krokov.

KROKY:

  • Najprv prejdite na Rozvíjať r na páse kariet.
  • Po druhé, kliknite na Visual Basic otvoriť Editor jazyka Visual Basic .
  • Ďalší spôsob otvorenia Editor jazyka Visual Basic je jednoducho stlačiť Alt + F11 .
  • Alebo kliknite pravým tlačidlom myši na hárok a vyberte položku Zobraziť kód .
  • Ďalej prejdite na stránku Vložte a vyberte Modul z rozbaľovacej ponuky.
  • Otvorí sa okno Visual Basic.
  • Potom skopírujte a vložte Kód VBA nižšie.

Kód VBA:

 Sub Remove_Filters2() Dim lstObj As ListObject For Each lstObj In Sheet2.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj End Sub 
  • Ďalej stlačte tlačidlo Kláves F5 alebo kliknite na Run Sub spustiť kód.

  • A tento kód vymaže všetky filtre tabuľky Excel z vášho listu a poskytne výstup ako Metóda 1 .

Vysvetlenie kódu VBA

 For Each lstObj In Sheet2.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj 

Tieto riadky kódu prechádzajú všetky tabuľky na hárku a odstraňujú všetky filtre pre celý pracovný hárok.

Prečítajte si viac: Ako filtrovať pivotnú tabuľku programu Excel (8 efektívnych spôsobov)

3. Odstránenie filtra zo stĺpca pomocou VBA v programe Excel

Pozrime sa na ďalší spôsob vymazania filtra zo stĺpca pomocou programu Excel VBA. Pozrime sa na postup tohto postupu.

KROKY:

  • Ak chcete začať, kliknite na Vývojár na páse kariet.
  • Po druhé, spustite Editor jazyka Visual Basic kliknutím na Visual Basic .
  • Prípadne môžete získať prístup k Editor jazyka Visual Basic stlačením Alt + F11 .
  • Alebo, kliknutie pravým tlačidlom myši na na hárku a vyberte Zobraziť kód z ponuky.
  • Potom vyberte Modul z rozbaľovacieho zoznamu v časti Vložte .
  • Zobrazí sa okno Visual Basic.
  • Napíšte tam kód.

Kód VBA:

 Sub Remove_Filter3() Sheet1.Range("B3:D16").AutoFilter Field:=4 End Sub 
  • Nakoniec stlačte tlačidlo Kláves F5 na spustenie kódu.

  • Použitím tohto kódu odstránite filter zo stĺpca v tabuľke Excel.

Vysvetlenie kódu VBA

 Sheet1.Range("B3:D16").AutoFilter Field:=4 

Tento riadok kódu uvádza iba číslo poľa a žiadne iné parametre.

Prečítajte si viac: Excel VBA na filtrovanie v tom istom stĺpci podľa viacerých kritérií (6 príkladov)

Podobné čítania

  • Excel VBA: Ako filtrovať pomocou viacerých kritérií v poli (7 spôsobov)
  • Kód VBA na filtrovanie údajov podľa dátumu v programe Excel (4 príklady)
  • Ako používať filter v chránenom liste programu Excel (s jednoduchými krokmi)
  • Filtrovanie rôznych stĺpcov podľa viacerých kritérií v programe Excel VBA
  • Kód VBA na filtrovanie údajov v programe Excel (8 príkladov)

4. Vymazanie všetkých filtrov v aktívnom pracovnom hárku

Teraz sa pozrite na ďalšiu Excel VBA metóda na vymazanie všetkých filtrov z aktívneho pracovného hárka. Postupujme podľa nasledujúcich krokov.

KROKY:

  • Ak chcete začať, otvorte stuhu a vyberte položku Vývojár možnosť.
  • Potom, ak chcete získať prístup k Editor jazyka Visual Basic , kliknite na Visual Basic .
  • Stlačenie Alt + F11 vyvolá aj Editor jazyka Visual Basic .
  • Prípadne, kliknutie pravým tlačidlom myši na hárku a vyberte Zobraziť kód zo zobrazenej ponuky.
  • Teraz z Vložte rozbaľovacej možnosti, vyberte Modul .
  • Potom skopírujte a vložte VBA nasledujúci kód.

Kód VBA:

 Public Sub RemoveFilter() If ActiveSheet.FilterMode = True Then ActiveSheet.ShowAllData End If End Sub 
  • Kód spustíte stlačením tlačidla F5 kľúč.

  • A nakoniec budete môcť odstrániť filtre z údajov pomocou tejto funkcie VBA kód ako Metóda-1 .

Prečítajte si viac: Ako filtrovať podľa zoznamu v inom hárku v programe Excel (2 metódy)

5. Excel VBA na odstránenie všetkých filtrov zo zošita

Preskúmajme ďalšie r Excel VBA spôsob, ako odstrániť všetky filtre zo zošita. Pozrime sa teda na jednotlivé kroky.

KROKY:

  • Ak chcete začať, otvorte stuhu a vyberte Vývojár z rozbaľovacej ponuky.
  • Potom vyberte Visual Basic otvoriť Editor jazyka Visual Basic .
  • Stránka Editor jazyka Visual Basic môžete tiež otvoriť stlačením Alt + F11 .
  • Prípadne môžete kliknutie pravým tlačidlom myši na hárku a vyberte Zobraziť kód z kontextového menu.
  • Potom vyberte Modul z Vložte rozbaľovacie menu.
  • Potom skopírujte a vložte nasledujúci kód VBA.

Kód VBA:

 Sub Remove_Filters_From_Workbook() Dim shtnam As Worksheet Dim lstObj As ListObject For Each shtnam In Worksheets For Each lstObj In shtnam.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj Next shtnam End Sub 
  • Nakoniec spustite kód stlačením F5 na klávesnici a výsledok sa zobrazí v pracovnom hárku.

  • Táto stránka VBA kód vymaže všetky filtre z celého zošita, ako je znázornené v prvá metóda .

Vysvetlenie kódu VBA

 For Each shtnam In Worksheets For Each lstObj In shtnam.ListObjects lstObj.AutoFilter.ShowAllData Next lstObj Next shtnam 

Prvá slučka slúži na prechádzanie všetkých tabuliek v zošite. Druhá slučka slúži na prechádzanie všetkých tabuliek na pracovnom liste. Potom riadok vnútri slučky len vymaže filter z tabuľky. Potom uzavrite slučku poslednými dvoma riadkami.

Prečítajte si viac: Skratka pre filter programu Excel (3 rýchle použitia s príkladmi)

Záver

Vyššie uvedené metódy vám pomôžu Odstránenie filtra v programe Excel VBA . Dúfam, že vám to pomôže! Ak máte akékoľvek otázky, návrhy alebo spätnú väzbu, dajte nám vedieť v sekcii komentárov. Alebo si môžete pozrieť naše ďalšie články v ExcelWIKI.com blog!

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.