VBA - Odśwież tabelę przestawną po zmianie danych

W tym samouczku zademonstrujemy, jak odświeżyć tabelę przestawną, gdy dane ulegną zmianie przy użyciu języka VBA.

Tabele przestawne to wyjątkowo potężne narzędzie do obsługi danych w programie Excel. Tabele przestawne pozwalają nam analizować i interpretować duże ilości danych poprzez grupowanie i podsumowywanie pól i wierszy.

Kiedy tworzymy tabelę przestawną, dane są przechowywane w tak zwanej pamięci podręcznej tabeli przestawnej. Dane są zatem przechowywane w pamięci podręcznej komputera, co przyspiesza działanie tabeli przestawnej.

Jeśli zaktualizujemy dane, na których opiera się tabela przestawna, sama tabela przestawna nie zostanie automatycznie zaktualizowana. Musielibyśmy kliknąć przycisk Odśwież wszystko na karcie Dane na Wstążce, aby odświeżyć tabelę przestawną.

Odświeżanie tabeli przestawnej w VBA

Gdy dane ulegną zmianie, możemy napisać makro w Worksheet_Change Event aby zaktualizować tabelę przestawną. Aby uzyskać dostęp do arkusza Change Event, musimy przejść do Edytora Visual Basic w programie Excel (VBE).

naciskać Alt+F11 aby uzyskać dostęp do VBE lub w Wstążka, Wybierz Deweloper > Visual Basic.

Uwaga: Jeśli nie widzisz Wstążki programisty, musisz ją włączyć.

w Eksplorator projektów, wybierz Arkusz zawierający tabelę przestawną.

w Obiekt rozwijane pole, wybierz Arkusz roboczy. Spowoduje to automatyczne dodanie wydarzenia dla Wybór_Zmiana.

w Procedura rozwijane pole, wybierz Reszta.

A Reszta Zdarzenie zostanie dodane do modułu VBA zawartego w Arkuszu.

NOTATKA: Możemy usunąć Worksheet_SelectionChange zdarzenie, ponieważ nie jest wymagane.

W obrębie Arkusz_Zmiana zdarzenie, wpisz następujący kod:

1 ActiveSheet.PivotTables("Tabela przestawna1").RefreshTable

Przełącz się z powrotem do arkusza Excel i zmień wartość w tabeli danych. Dane w tabeli przestawnej zostaną wówczas automatycznie zaktualizowane.

Będziesz pomóc w rozwoju serwisu, dzieląc stronę ze swoimi znajomymi

wave wave wave wave wave