Excel 2010 PowerPivot:如何显示没有数据的项目?


12

在标准Excel数据透视表中,字段的选项使您可以强制显示所有项目,即使当前选择没有结果。这是选项:

数据透视表字段设置对话框

但是,使用适用于Excel 2010的PowerPivot加载项,此选项显示为灰色。有没有解决方法,可以强制所有结果出现?

示例场景-按月出售的香蕉数量。如果我在八月不卖任何香蕉,powerpivot表根本不会显示八月的一列,那么它会从七月跳到九月。我需要八月出现,香蕉的数量为零,或者为零。

有任何想法吗?也许需要DAX表达式?

编辑:为回答harrymc的问题,我通过从PowerPivot窗口的此菜单中选择PivotTable来创建此PivotTable。

PowerPivot数据透视表插入菜单


在PowerPivot数据集上,您不能在没有数据的情况下添加项目,因此,“显示无数据的项目”是很自然的。您是否按照此处所述使用展平数据透视表?
harrymc

感谢您的回应harrymc,我没有使用Flattened PivotTable,而是使用了标准的PivotTable(请参见上图)。
Andi Mohr 2013年

关于您的第一点,我不确定我是否正确理解您。您说您不能添加没有数据的项目,但是我的数据集确实包括8月份的苹果销售。这通常意味着启用“显示无数据的项目”将显示August列。您是说从PowerPivot数据中提取数据透视表的行为与任何其他数据源不同吗?
Andi Mohr 2013年

Answers:


5

实际上,这是一个更好的解决方案。感谢Alberto Ferrari所做的这一件事。

您需要构建一个Months表(即,一个月名称列表,Jan / Feb / Mar等- 链接表可以正常工作),并在新的Months表和事实表之间创建关系。

然后编写这样的度量:

NeverBlankUnits:=IF( ISBLANK( SUM(FruitSales[Units]) )
                      , 0
                      , SUM(FruitSales[Units]) 
                   )

编辑:将新的月份列添加到数据透视表中时,您可能会发现默认排序令人沮丧地是字母顺序;4月,8月,12月,2月...这是一个很棒的教程,向您展示如何解决这个问题。


0

一种变通办法可能是使用数据分析表达式(DAX)将零替换为空白。

只要事实表中不存在任何数据,但您希望该行出现在数据透视表中,则DAX可以强制使用零而不是空格。

对于具有部门,部门和事实表(称为数字)的简单工作表,并使用单列“ D”包含要求和的数字,请以这种方式编写DAX代码:

=IF (
    COUNTROWS (Divisions) > 0; 
    IF (ISBLANK (SUM (Numbers[D])), 0, SUM (Numbers[D]))
)

有关更多信息,请参见:
如何在PowerPivot的Excel的PowerPivot加载项数据分析表达式(DAX)中使用DAX

此方法最初是在显示行中没有数据的项目中提出的。


谢谢-只是看着这种方法,看看我是否可以使它工作。我注意到的第一件事是公式中的一个小错字-您使用了分号而不是逗号。(与链接上的AlbertoFerrari的原始帖子一样。)
Andi Mohr,

可悲的是,这似乎并没有解决问题。我已经适应了公式如下:Units_2:=IF (COUNTROWS('FruitSales') > 0,IF(ISBLANK (SUM (FruitSales[Units])), 0, SUM (FruitSales[Units])))。数据透视表仅显示7月和9月售出的商品。
安迪·莫尔

如果找不到其他解决方案,剩下的就是将数据透视表展平到本地电子表格中。我之前链接到的文章可能会有所帮助。
harrymc

0

蛮力方法是为每个月创建一个度量。只要一个月列中有一些数据,就会出现所有月列。但是,创建所有这些单独的度量非常繁琐-不理想。

=CALCULATE(
   SUM([Units])
   ,Filter('FruitSales',[Month Name]="August")
   )

0

这对我有用:

= if(sum(calender [Date])> 0; if(isblank(sum(Sales_SalesOrderDetail [LineTotal])); 0; sum(Sales_SalesOrderDetail [LineTotal]))))


哪里calendar[Date]来的?那不是我的示例场景,那么您如何添加它以及如何在PowerPivot中链接此表?
安迪·莫尔
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.