Ugrás a tartalomra

Hogyan lehet automatikusan újra alkalmazni az automatikus szűrést, amikor az adatok megváltoznak az Excel programban?

Szerző: Xiaoyang Utolsó módosítás: 2020-11-18

Az Excel alkalmazásban a Szűrő funkció az adatok szűrésére, a szűrési eredmény nem változik automatikusan a szűrt adatokban bekövetkező adatok változásával. Például, amikor az összes almát kiszűröm az adatokból, most az egyik szűrt adatot BBBBBB-re változtatom, de az eredmény nem változik annyira, mint a bemutatott képernyőképen. Ebben a cikkben arról fogok beszélni, hogyan lehet automatikusan alkalmazni az automatikus szűrést, amikor az adatok megváltoznak az Excel programban.

doc auot 1. szűrő frissítése

Automatikusan alkalmazza az automatikus szűrőt, amikor az adatok VBA kóddal változnak


nyíl kék jobb buborék Automatikusan alkalmazza az automatikus szűrőt, amikor az adatok VBA kóddal változnak

Normál esetben a szűrőadatokat úgy frissítheti, hogy manuálisan rákattint az Újra alkalmazás funkcióra, de itt bemutatok egy VBA-kódot, amely az adatok változásakor automatikusan frissíti a szűrőadatokat, kérjük, tegye a következőket:

1. Lépjen arra a munkalapra, amelyen automatikusan frissíteni kívánja a szűrőt, amikor az adatok megváltoznak.

2. Kattintson a jobb gombbal a lap fülre, és válassza a lehetőséget Kód megtekintése a helyi menüből, a kiugrottban Microsoft Visual Basic for Applications ablakba, kérjük, másolja és illessze be a következő kódot az üres Modul ablakba, lásd a képernyőképet:

VBA kód: A szűrő automatikus alkalmazása, ha az adatok megváltoznak:

Private Sub Worksheet_Change(ByVal Target As Range)
   Sheets("Sheet3").AutoFilter.ApplyFilter
End Sub

doc auot 2. szűrő frissítése

Megjegyzések: A fenti kódban Sheet 3 az ön által használt automatikus szűrővel ellátott lap neve, kérjük, változtassa meg igénye szerint.

3. Ezután mentse el és zárja be ezt a kódablakot, most, amikor megváltoztatja a szűrt adatokat, a Szűrő a funkció egyszerre automatikusan frissül, lásd a képernyőképet:

doc auot 3. szűrő frissítése

A legjobb irodai hatékonyságnövelő eszközök

🤖 Kutools AI Aide: Forradalmasítsa az adatelemzést a következők alapján: Intelligens végrehajtás   |  Kód létrehozása  |  Hozzon létre egyéni képleteket  |  Adatok elemzése és diagramok létrehozása  |  A Kutools funkciók meghívása...
Népszerű szolgáltatások: Ismétlődések keresése, kiemelése vagy azonosítása   |  Üres sorok törlése   |  Oszlopok vagy cellák kombinálása adatvesztés nélkül   |   Kerek Formula nélkül ...
Szuper keresés: Több kritérium VLookup    Többértékű VLookup  |   VLookup több munkalapon   |   Fuzzy Lookup ....
Speciális legördülő lista: Gyors legördülő lista létrehozása   |  Függő legördülő lista   |  Többszörösen válassza ki a legördülő listát ....
Oszlopkezelő: Adjon meg egy adott számú oszlopot  |  Oszlopok mozgatása  |  Kapcsolja be a Rejtett oszlopok láthatósági állapotát  |  Tartományok és oszlopok összehasonlítása ...
Kiemelt funkciók: Rács fókusz   |  Design nézet   |   Nagy Formula bár    Munkafüzet és lapkezelő   |  Erőforrás-könyvtár (Auto szöveg)   |  Dátumválasztó   |  Kombinálja a munkalapokat   |  Cellák titkosítása/dekódolása    E-mailek küldése listánként   |  Szuper szűrő   |   Speciális szűrő (félkövér/dőlt/áthúzott szűrés...) ...
A 15 legjobb eszközkészlet12 szöveg Eszközök (Szöveg hozzáadása, Karakterek eltávolítása,...)   |   50 + Táblázatos Típusai (Gantt-diagram,...)   |   40+ Praktikus képletek (Számolja ki az életkort a születésnap alapján,...)   |   19 beszúrás Eszközök (Helyezze be a QR-kódot, Kép beszúrása az útvonalból,...)   |   12 Átalakítás Eszközök (Számok szavakig, Valuta átváltás,...)   |   7 Egyesítés és felosztás Eszközök (Haladó kombinált sorok, Hasított sejtek,...)   |   ... és több

Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz.  Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...

Leírás


Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
Comments (40)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Finally got the filter to update automatically. My scenario included a filter on sheet "Master" that had a formulas that depended on other sheets (named 1, 2,...,21).

Paste this in the source code into the "Master" sheet.

Private Sub Worksheet_Calculate()
On Error Resume Next
Application.EnableEvents = False
Me.AutoFilter.ApplyFilter
Application.EnableEvents = True
End Sub


Paste this in the source code of each sheet that feeds data into the master sheet. (Sheet 21 shown from my scenario)

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Sheets("Master").AutoFilter.ApplyFilter
End Sub
This comment was minimized by the moderator on the site
Its not working if able changing by itslef, like when you linking data from another app, can someone help me fix this please
This comment was minimized by the moderator on the site
Pasted it as shown, but not working. The sheet I need updated is an invoice that has formulas that are pulling from another sheet. Since the blank cells all have formulas in them, is that preventing it from working? Seems simple for it to work, so I'm getting frustrated with myself.
This comment was minimized by the moderator on the site
2022 update!
Just add this to the sheets you want it applied too.

Private Sub Worksheet_Change(ByVal Target As Range)
AutoFilter.ApplyFilter
End Sub
Rated 5 out of 5
This comment was minimized by the moderator on the site
My input data is on the first sheet of the book, and the table in which the filter is applied is on another sheet of the same book. When I change the data on the first sheet, the filter on the second sheet should be updated. But if at the time of changing the data, a cell in the range of this table is not selected, then I get an error:"Run-time error '91': Object variable or With block variable not set". Therefore, i am should always check that the cursor is in a table range cell and not in any other place on the sheet. How to fix it?Solved:
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("name of sheet").ListObjects("name of table").AutoFilter.ApplyFilter
End Sub
This comment was minimized by the moderator on the site
Perfect!!! mine was in a table and this worked a treat!! Thank you!
There are no comments posted here yet
Load More
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations