Jak automatycznie odświeżać filtrowane dane w programie Excel, gdy są aktualizowane

Microsoft Excel umożliwia filtrowanie danych. Jest to przydatna funkcja, która może pomóc w zrozumieniu dużych ilości danych. Jeśli nie masz technicznej wiedzy potrzebnej do utworzenia bazy danych, ta funkcja uratuje życie. Filtry są dość podstawowe i pozwalają na uwzględnienie lub wykluczenie danych z kolumny. Filtr rozszerza się i ma zastosowanie również do wartości danych w odpowiednich wierszach. To, czego filtr nie robi, to automatyczna aktualizacja. Jeśli wartość w przefiltrowanej kolumnie zmieni się z powodu ręcznej aktualizacji lub użycia formuły, należy ponownie zastosować filtry. Prosty fragment kodu umożliwia aktualizację odfiltrowanych kolumn w locie.

Będziesz musiał włączyć makra i zapisać plik Excela jako plik z włączoną obsługą makr, .XLSM, aby użyć kodu. Aby zapisać plik jako plik z obsługą makr, przejdź do Plik> Zapisz jako i wybierz Skoroszyt programu Excel z włączoną obsługą makr w oknie dialogowym „Zapisz jako”.

Następnie wybierz arkusz, do którego zastosowałeś filtry. Kliknij go prawym przyciskiem myszy i wybierz „Wyświetl kod” z menu kontekstowego.

Otworzy się okno Microsoft Visual Basic z aktualnym arkuszem Excela. Wklej następujący kod w oknie kodu.

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

Zapisz plik. Jeśli plik nie został zapisany jako skoroszyt programu Excel z włączoną obsługą makr, zostanie wyświetlony monit o zrobienie tego ponownie. Ten zapisany plik zostanie zapisany jako kopia i nie nadpisze bieżącego pliku.

Po dodaniu kodu możesz zaktualizować dowolną komórkę w przefiltrowanej kolumnie, która automatycznie odświeży przefiltrowane dane zgodnie z ustawionymi warunkami. Ten kod został napisany przez Sorina, użytkownika Stack Exchange.