Kategorie szkoleń | Egzaminy | Kontakt
  • 2
  • 5
  • 1.8K

Wcześniej, gdy pracowałem na Excelu 2003, musiałem czyścić stare pozycje z filtra z tabel przestawnych zasilanych systematycznie nowymi danymi.

Stosowałem poniższe makro:

 

Sub Remove_Old_Items()
    Dim pvt As PivotTable
    For Each pvt In ActiveSheet.PivotTables
        pvt.PivotCache.MissingItemsLimit = xlMissingItemsNone
        pvt.PivotCache.Refresh
    Next pvt
End Sub

 

Natomiast zauważyłem, że na nowym Excelu 2010 chyba nie ma potrzeby (nie widzę aby zostawały stare pozycje). Czy dobrze mi się wydaję, że teraz nie muszę stosować powyższego makra pracując na plikach xlsx, xlsm?

Przemo
  • Zapytał
  • @ Przemo | 04.04.2014
    • laureat
    • 59
    • 24
    • 71

Odpowiedzi (2)

  • 6

Osobiście generuję zestaw tabel przestawnych zawsze na nowo (nie odświeżam, tylko generuję nowe), więc nigdy nie miałem tego problemu

  • Odpowiedział
  • @ | 08.04.2014
  • TRENER ALTKOM AKADEMII
Komentarze
niestety u mnie to nie przejdzie, mam już gotowe szablony raportów (pivots) z mnóstwem pól obliczeniowych oraz wykresami, gdzie zmieniają się dane w źródle (access), a w excelu tylko odświeżam tabele.
Skomentował : @ Przemo ,09.04.2014
  • 59
  • 24
  • 71
  • 5

Wychodzi na to, że od Excela 2007 wzwyż, nie trzeba używać makra do czyszczenia starych pól po odświeżeniu danych. Można to zrobić poprzez "opcje tabel przestawnych" następnie zakładkę "Dane", i miejscu "zachowaj elementy usunięte ze źródła" wybieramy "Brak". Od tego momentu Excel powinien czyścić stare pozycje za każdym razem gdy odświeżamy dane.

 

Załączniki

  • jpg

    clear_old_items.jpg ( 58K )
Przemo
  • Odpowiedział
  • @ Przemo | 09.04.2014
    • laureat
    • 59
    • 24
    • 71