A Microsoft Excel lehetővé teszi az adatok szűrését. Ez egy hasznos funkció, amely segíthet megérteni a nagy mennyiségű adatot. Ha nem rendelkezik az adatbázis létrehozásához szükséges műszaki ismeretekkel, ez a funkció életmentő. A szűrők meglehetősen alapvetőek, és lehetővé teszik adatok felvételét vagy kizárását egy oszlopból. A szűrő kiterjed és vonatkozik a megfelelő sorokban lévő adatértékekre is. Amit a szűrő nem csinál, az maga az automatikus frissítés. Ha egy szűrt oszlop értéke megváltozik, vagy azért, mert manuálisan frissítette, vagy egy képlet használatban van, akkor ismét alkalmaznia kell a szűrőket. Egy egyszerű kódrészlet lehetővé teszi a szűrt oszlopok menet közbeni frissítését.
A kód használatához engedélyeznie kell a makrókat, és el kell mentenie az Excel-fájlt makró-kompatibilis fájlként (.XLSM). A fájl makró-kompatibilis fájlként való mentéséhez lépjen a Fájl>Mentés másként menüpontra, és válassza ki az Excel Makró-engedélyezett munkafüzetet a „Mentés másként” párbeszédpanelen.
Ezután válassza ki azt a lapot, amelyre szűrőket alkalmazott. Kattintson a jobb gombbal, és válassza a „Kód megtekintése” lehetőséget a helyi menüből.
Megnyílik egy Microsoft Visual Basic ablak az aktuális Excel munkalappal. Illessze be a következő kódot a kód ablakba.
Private Sub Worksheet_Change(ByVal Target As Range) If Me.FilterMode = True Then With Application .EnableEvents = False .ScreenUpdating = False End With With ActiveWorkbook .CustomViews.Add ViewName:="Mine", RowColSettings:=True Me.AutoFilterMode = False .CustomViews("Mine").Show .CustomViews("Mine").Delete End With With Application .EnableEvents = True .ScreenUpdating = True End With End If End Sub
Mentse el a fájlt. Ha nem mentette el a fájlt Excel-makró-kompatibilis munkafüzetként, a rendszer újra kéri, hogy tegye meg. Ezt a mentett fájlt a rendszer másolatként menti, és nem írja felül az aktuális fájlt.
A kód hozzáadása után frissítheti a szűrt oszlop bármely celláját, és az automatikusan frissíti a szűrt adatokat a beállított feltételek szerint. Ezt a kódot a Stack Exchange felhasználó, Sorin írta.