在数据透视表中筛选0值

时间:2017-08-04 07:38:47

标签: excel excel-vba pivot-table excel-pivot vba

我有以下Excel电子表格:

      A                  B                    C
    Product         Sent Quantity       Returned Quantity
1   Product A           500                     0
2   Product A           400                   300
3   Product A           600                   400
4   Product B           250                     0
5   Product B           300                   150
6   Product C           700                     0

该表显示产品的销售额( B列)和<(> C列)。

我从上面的数据中创建了一个数据透视表,这导致了以下结果:

                Sum of Sent Quantity          Sum of Returned Quantity
Product A           1.500                          700
Product B             550                          150
Product C             700                            0

现在我将返回的数量用作报告过滤器。 我将“150”设置为过滤条件,得到以下结果:

                 Sum of Sent Quantity          Sum of Returned Quantity
Product B             550                          150

到目前为止一切正常。

现在我将过滤器从“150”更改为“0”,我得到以下结果:

                Sum of Sent Quantity          Sum of Returned Quantity
Product A              500                            0
Product B              250                            0
Product C              750                            0

但是,我的目标结果是:

              Sum of Sent Quantity          Sum of Returned Quantity
Product C              700                            0

我需要更改什么才能达到目标结果?

2 个答案:

答案 0 :(得分:0)

所以,我已在&#34; Sheet1&#34;中输入了您的数据。像这样:

enter image description here

然后,在&#34; Sheet2&#34;我做了下表:

enter image description here

您的数据透视表是哪个。但细胞用公式定义:

B2:=SUMIF(Sheet1!$A$2:$A$7,Sheet2!A2,Sheet1!$B$2:$B$7)

C2:=SUMIF(Sheet1!$A$2:$A$7,Sheet2!A2,Sheet1!$C$2:$C$7)

剩下的就是把它拖下来(如你所知,它会自动调整)。现在,只需锁定第一行,然后就可以对其应用任何过滤器。

答案 1 :(得分:0)

这是一种稍微不同的方式,它只需要一个表,并允许您过滤和显示数据透视表中的值:

      A              B                C                  D
1   Product     Sent Quantity   Returned Quantity   Sum of Returned Quantity
2   Product A       500                 0               700
3   Product A       400               300               700
4   Product A       600               400               700
5   Product B       250                 0               150
6   Product B       300               150               150
7   Product C       700                 0                 0

单元格 D2 中的公式为=SUMIF($A:$A,$A2,C:C)将此公式复制到列中。

然后将返回数量的总和设置为您的过滤器,它应该可以正常工作。可以为其他过滤器添加其他列,如果愿意,可以隐藏小计列。