Udostępnij za pośrednictwem


Ponowne obliczanie formuł

Podczas pracy z danymi w PowerPivot for Excel skoroszyt, z czas do czas może być konieczne odświeżenie danych ze źródło, ponowne obliczanie formuły utworzone w kolumnach obliczeniowych lub upewnij się, że dane przedstawione tabela przestawna jest o dacie.

This topic explains the difference between refreshing data vs.recalculating data, provides an overview of how recalculation is triggered, and describes your options for controlling recalculation.

Opis vs odświeżania danych.Ponowne obliczanie

W programie PowerPivot jest używane zarówno odświeżanie, jak i ponowne obliczanie danych:

Data refresh means obtaining up-to-date data from external data sources.PowerPivot does not automatically detect changes in external data sources, but data can be refreshed manually from the PowerPivot workbook or automatically if the workbook is shared on SharePoint.Aby uzyskać więcej informacji, zobacz Różne metody aktualizowania danych w programie PowerPivot.

Ponowne obliczanie oznacza zaktualizowanie wszystkich kolumn, tabel, wykresów i tabel przestawnych skoroszyt zawierają formuły.Biorąc pod uwagę, że każde ponowne obliczenie formuły powoduje spadek wydajności, istotne znaczenie ma znajomość zależności związanych z każdym obliczeniem.

W tym temacie wyjaśniono zasadę działania ponownego obliczania.Więcej informacji o potencjalnych wpływów wydajności przeliczania zobacz sekcję Rozwiązywanie problemów z przeliczenia poniżej.

Ważna informacjaWażne:

Nigdy nie należy zapisywać ani publikować skoroszytu przed ponownym obliczeniem znajdujących się w nim formuł.

Ręczne vs.Automatyczne przeliczanie

Domyślnie PowerPivot automatycznie oblicza ponownie wymagane przy optymalizacji czas przetwarzania.Mimo że ponowne obliczanie może być czasochłonne, jest ważnym zadaniem, ponieważ podczas ponownego obliczania są sprawdzane zależności kolumn, a użytkownik zostaje powiadomiony, czy kolumna została zmieniona, czy dane są nieprawidłowe lub czy wystąpił błąd w formule używanej w pracy. Można jednak wybrać opcję późniejszego sprawdzania poprawności i aktualizować obliczenia tylko ręcznie, zwłaszcza w przypadku pracy ze złożonymi formułami lub bardzo dużymi zestawami danych, gdy użytkownik chce określać, kiedy mają być wykonywane aktualizacje.

Zarówno tryb ręczny, jak i automatyczny mają swoje zalety, ale zdecydowanie zalecane jest używanie trybu automatycznego ponownego obliczania.Ten tryb zachowuje PowerPivot synchronizację, metadane i uniemożliwia problemów powodowanych przez usunięcie danych zmiany nazw lub typów danych lub Brak zależności.

Używanie trybu automatycznego ponownego obliczania

Gdy jest używany tryb automatycznego ponownego obliczania, wszelkie zmiany w danych w skoroszycie wpływające na wynik jakiejkolwiek formuły powodują ponowne obliczenie całej kolumny zawierającej formułę.Następujące zmiany zawsze wymagają ponownego obliczenia formuł:

  • Odświeżenie wartości z zewnętrznego źródła danych.

  • Zmieniona definicja formuły.

  • Zmiany nazw tabel lub kolumn, do których odwołuje się formuła.

  • Dodanie, zmodyfikowanie lub usunięcie relacji między tabelami.

  • Dodanie nowych miar lub kolumn obliczeniowych.

  • Wprowadzono zmiany innych formuł w PowerPivot skoroszyt, więc kolumny lub obliczeń, które zależą od tych obliczeń powinny być odświeżane.

  • Wstawienie lub usunięcie wierszy.

  • Zastosowano filtr, który wymaga wykonania zapytania w celu zaktualizowania zestawu danych.Filtr mógł zostać zastosowany w formule albo jako część tabeli przestawnej lub wykresu przestawnego.

Używanie trybu ręcznego ponownego obliczania

Trybu ręcznego ponownego obliczania można użyć, aby uniknąć obciążenia ponownym obliczaniem wyników formuł, zanim użytkownik będzie do niego przygotowany.Tryb ręczny jest szczególnie użyteczny w następujących sytuacjach:

  • Użytkownik projektuje formułę za pomocą szablonu i chce zmienić nazwy kolumn oraz tabel używanych w formule, zanim sprawdzi poprawność formuły.

  • Wiadomo, że niektóre dane w skoroszycie zostały zmienione, ale użytkownik pracuje nad inną kolumną, która nie została zmieniona, i chce opóźnić ponowne obliczanie.

  • Użytkownik pracuje nad skoroszytem mającym wiele zależności i chce odroczyć ponowne obliczanie do czasu, gdy będzie mieć pewność, że wprowadzono wszystkie niezbędne zmiany.

Należy zauważyć, że, jak skoroszyt jest zestaw tryb obliczania ręcznego, PowerPivot for Excel nie wykonuje żadnych sprawdzanie poprawności lub sprawdzanie formuł następujące wyniki:

  • Nowe formuły, które dodajesz do skoroszyt zostanie oznaczony jako zawierające błąd.

  • W nowym kolumnach obliczeniowych nie pojawiają się żadne wyniki.

Aby uzyskać instrukcje dotyczące zmieniania obliczeń tryb lub wyzwalacza ręcznego obliczania formuł, zobacz Ręcznie ponownie obliczyć formuły poniżej.

Ręczne ponowne obliczanie formuł

W tym temacie opisano sposób tymczasowej zmiany ustawień skoroszytu programu PowerPivot, tak aby wyniki formuł nie były aktualizowane automatycznie.Firma Microsoft zaleca użycie Automatyczne opcji, o ile to możliwe; jednak ręczne obliczanie formuł może być konieczne złagodzić wpływ na wydajność skoroszyt podczas projektowania formuły.

Po zmianie tego ustawienia należy ręcznie wyzwolić aktualizację wszystkich obliczeń opartych na formułach.

Ważna informacjaWażne:

Zawsze przed opublikowaniem skoroszytu należy zmienić tryb obliczania z powrotem na automatyczny.Pomoże to uniknąć problemów podczas projektowania formuł.

Konfigurowanie ręcznego ponownego obliczania

Ponowne obliczanie oznacza zaktualizowanie wyniki formuł używających zmienionych danych.Ponowne obliczanie jest wymagane zawsze wtedy, gdy jest zmieniana formuła, gdy są zmieniane dane wpływające na wynik obliczeń lub gdy dane zostaną odświeżone.Aby uzyskać więcej informacji na temat odświeżania danych, zobacz Różne metody aktualizowania danych w programie PowerPivot.

Ostrzeżenie

W systemie Windows Vista i Windows 7 jest wyposażony w PowerPivot okna są dostępne na Wstążce, który omówiono w tym temacie.W systemie Windows XP te funkcje są dostępne za pośrednictwem zestawu menu.Jeśli używasz systemu Windows XP i chcesz zobaczyć, jak polecenia menu odnoszą się do poleceń wstążki, zobacz Interfejs użytkownika programu PowerPivot w systemie Windows XP.

Aby skonfigurować skoroszyt do ręcznego ponownego obliczania

  1. W PowerPivot okna, kliknij Projekt karcie i w obliczenia grupy, kliknij przycisk Opcje obliczania.

  2. Kliknij tryb obliczania ręcznego.

  3. Aby ponownie obliczyć wszystkie tabele, kliknij Opcje obliczania ponownie, a następnie kliknij przycisk Oblicz teraz.

    Formuły w skoroszycie są sprawdzane pod kątem błędów, a tabele są aktualizowane przy użyciu nowych wyników, jeśli takie istnieją.W zależności od ilości danych i liczby obliczeń skoroszyt może przestać odpowiadać na pewien czas.

Rozwiązywanie problemów z ponownym obliczaniem

W tej sekcji znajdują się dodatkowe porady techniczne, z których warto korzystać podczas planowania ponownego obliczania skoroszytu.Aby uzyskać ogólne informacje dotyczące ponownego obliczania i odświeżania danych w skoroszycie, zobacz następujące tematy:

Ponowne obliczanie formuł

Różne metody aktualizowania danych w programie PowerPivot

Zależności

Gdy kolumna jest zależna od innej kolumny, a zawartość tej innej kolumny zostanie w dowolny sposób zmieniona, wszystkie powiązane kolumny mogą wymagać ponownego obliczenia.Gdy zostaną wprowadzone zmiany PowerPivot skoroszyt, PowerPivot for Excel dokonuje analizy istniejącej PowerPivot danych, aby określić, czy obliczanie jest wymagane i wykonuje aktualizację w najbardziej efektywny możliwego sposób.

Załóżmy, że masz tabela, Sprzedaż, czyli związanych z tabelami, produktu i ProductCategory; i formuły w Sprzedaż tabela zależą od obu pozostałych tabel.Każdej zmianie albo produktu lub ProductCategory tabel spowoduje kolumn obliczeniowych wszystkie Sprzedaż tabela mają zostać ponownie obliczone.Ma to sens, gdy weźmie się pod uwagę fakt istnienia formuł określających sprzedaż według kategorii lub produktów.Aby w takiej sytuacji zagwarantować poprawność wyników, należy ponownie obliczyć formuły oparte na tych danych.

PowerPivot zawsze przeprowadza pełne ponowne obliczanie tabela, ponieważ pełne ponowne obliczenie jest bardziej wydajny niż sprawdzanie zmienionych wartości. Zmiany, które wyzwalają ponowne obliczanie mogą obejmować główne zmiany, takie jak usunięcie kolumna, zmiana typu danych liczbowych, kolumna lub dodanie nowej kolumna.Jednak zmiany pozornie nieznaczne, takie jak zmiana nazwy kolumny, także mogą wyzwalać ponowne obliczanie.Jest to spowodowane tym, że nazwy kolumn są używane jako identyfikatory w formułach.

W niektórych przypadkach PowerPivot for Excel może ustalić, że kolumny mogą być wykluczone z ponownego obliczania.Na przykład, jeśli formuła wyszukuje wartość takich jak [Kolor produktu] z produktów tabela i kolumna, która jest zmieniane jest [Ilość] w sprzedaży tabela, formuła musi być obliczone ponownie nawet jeśli tabele sprzedaży i produktów są powiązane.Jednak jeśli wszelkie formuły, które opierają się na sprzedaży [Ilość, wymagane jest ponowne obliczenie.

Sekwencja ponownego obliczania dla kolumn zależnych

Zależności są obliczane przed wykonaniem innych operacji w ramach ponownego obliczania.Jeśli istnieje wiele kolumn, które zależą od siebie, PowerPivot się sekwencję zależności.Dzięki temu kolumny są przetwarzane w odpowiedniej kolejności i z maksymalną szybkością.

Transakcje

Oblicz ponownie lub odświeżanie danych operacji odbywa się jako transakcji.Oznacza to, że w przypadku niepowodzenia dowolnej części operacji odświeżania pozostałe operacje są wycofywane.Pozwala to zagwarantować, że dane nie zostaną pozostawione w stanie częściowego przetworzenia.Transakcjami nie można zarządzać tak jak w relacyjnej bazie danych ani nie można tworzyć punktów kontrolnych.

Ponowne obliczanie funkcji nietrwałych

Niektóre funkcje, takie jak NOW, RAND czy TODAY, nie mają ustalonych wartości.Aby uniknąć problemów z wydajnością, wykonanie zapytania lub filtrowania zazwyczaj nie powoduje ponownego obliczania takich funkcji, jeśli są one używane w kolumnie obliczeniowej.Wyniki tych funkcji są obliczane ponownie tylko przy ponownym obliczaniu całej kolumny.Te sytuacje obejmują odświeżanie z poziomu zewnętrznego źródła danych lub ręczne edytowanie danych, które powoduje ponowne obliczenie formuł zawierających te funkcje.Jednak funkcje nietrwałe, takie jak NOW, RAND czy TODAY, są zawsze obliczane ponownie, jeśli są używane w definicji miary.