W standardowych tabelach przestawnych programu Excel istnieje opcja dla pól, które pozwalają wymusić wyświetlanie wszystkich elementów, nawet jeśli nie ma wyników dla bieżącego wyboru. Oto opcja:
Jednak przy użyciu dodatku PowerPivot dla programu Excel 2010 ta opcja jest wyszarzona. Czy istnieje obejście problemu, dzięki któremu mogę wymusić wyświetlanie wszystkich wyników?
Przykładowy scenariusz - liczba bananów sprzedanych w ciągu miesiąca. Jeśli nie sprzedam żadnych bananów w sierpniu, tabela powerpivot w ogóle nie pokazuje kolumny z sierpnia, po prostu przeskakuje od lipca do września. Muszę się pojawić z pustą liczbą bananów lub zerem.
Jakieś pomysły? Może wymagane jest wyrażenie DAX?
EDYCJA : aby odpowiedzieć na pytanie harrymca, utworzyłem tę tabelę przestawną, wybierając opcję Tabela przestawna z tego menu w oknie PowerPivot.
Odpowiedzi:
W rzeczywistości jest to lepsze rozwiązanie. Podziękowania dla Alberto Ferrari za ten.
Musisz zbudować tabelę Miesięcy (tj. Listę nazw miesięcy, styczeń / luty / marzec itd. - połączona tabela będzie działać dobrze) i utworzyć relację między nową tabelą Miesiące a tabelą faktów.
Następnie napisz takty:
EDYCJA : Gdy dodasz kolumnę nowych miesięcy do tabeli przestawnej, może się okazać, że domyślny sort jest frustrująco alfabetyczny; Kwiecień, sierpień, grudzień, luty ... Oto świetny samouczek pokazujący, jak sobie z tym poradzić.
źródło
Obejściem może być możliwe użycie wyrażenia analizy danych (DAX) w celu zastąpienia spacji zerami.
Język DAX może wymusić zero zamiast pustego miejsca, gdy w tabeli faktów nie ma żadnych danych, ale chcesz, aby wiersz pojawił się w tabeli przestawnej.
W przypadku prostego arkusza z działami, działami i tabelą faktów o nazwie Liczby oraz z pojedynczą kolumną „D” zawierającą liczbę do zsumowania, napisz kod DAX w ten sposób:
Aby uzyskać więcej informacji, zobacz:
Jak używać języka DAX w wyrażeniach analizy danych dodatku PowerPivot programu Excel
(język DAX) w programie PowerPivot
Podejście to zostało pierwotnie zasugerowane w wątku Pokaż przedmioty bez danych o rzędach .
źródło
Units_2:=IF (COUNTROWS('FruitSales') > 0,IF(ISBLANK (SUM (FruitSales[Units])), 0, SUM (FruitSales[Units])))
. Tabela przestawna pokazuje tylko jednostki sprzedane w lipcu i wrześniu.Metodą brutalnej siły byłoby stworzenie miary dla każdego miesiąca. Tak długo, jak jedna z kolumn miesiąca zawiera pewne dane, pojawią się wszystkie kolumny miesiąca. Tworzenie wszystkich tych indywidualnych środków jest jednak bardzo uciążliwe - nie idealne.
źródło
to działa dla mnie:
= if (suma (kalendarz [Data])> 0; if (isblank (suma (Sales_SalesOrderDetail [LineTotal])); 0; suma (Sales_SalesOrderDetail [LineTotal])))
źródło
calendar[Date]
? Nie ma tego w moim przykładowym scenariuszu, więc jak to dodałeś i jak ta tabela jest połączona w PowerPivot?