数据透视表的报告filter使用“大于”

我有一个数据透视表,其中有一个报表filter中的字段(概率)。 其值为5(0,5,10,15,…,100)的步骤百分比。 我想用它来过滤大于或等于某个值的概率,但是filter只能过滤确切的select。

现在我使用允许多个值的解决方法,然后从我想要的阈值中select所有的值,一直到100这个解决scheme,除了是尴尬的,不显示我的select,这是必要的,因为这张表是打印出来。filter的显示值是“(多值)”,我想显示所有选定的值,甚至更好,像“> = 20%”。 我真的不在乎他们是在场上显示还是在Pivot表外的其他单元格中显示。

我的问题:1)我可以得到筛选器筛选> =我的select? 如果不是2)我可以显示多个选项,如“> = 20%”

我知道这有点晚了,但是如果这有助于任何人,我想你可以添加一个列到数据中,计算概率是">='PivotSheet'$D$2" (引用pivot table的单元格) 。

然后,将该列添加到数据透视表并将新列作为true/falsefilter。

然后,您可以更改存储在引用的单元格中的值以更新您的概率阈值。

如果我理解你的问题,这可能会得到你想要的。 filter值将显示在工作表上,并且可以更改以适应对概率阈值进行的任何快速更改。 T / Ffilter可以被标记为“高于/在概率阈值”或类似的东西。

我用这个来做类似的事情。 在Pivot表格单上引用单元格很方便,所以我可以更新值并刷新主键来快速修改结果。 我这样做的人不能就这个门槛应该下定决心。

在Excel数据透视表中,您是正确的,一个filter只允许显式select的值。 但是,如果filter字段放置在数据透视表的行或列上,则会获得更大的一组标签filter条件,包括“大于”。 如果你这样做了,那么附加的好处就是在表格主体中显示了符合你的条件的各种概率级别。

经过一番研究,我终于得到了一个VBA代码来显示另一个单元格中的filter值:

 Dim bRepresentAsRange As Boolean, bRangeBroken As Boolean Dim sSelection As String Dim tbl As Variant bRepresentAsRange = False bRangeBroker = False With Worksheets("Forecast").PivotTables("ForecastbyDivision") ReDim tbl(.PageFields("Probability").PivotItems.Count) For Each fld In .PivotFields("Probability").PivotItems If fld.Visible Then tbl(n) = fld.Name sSelection = sSelection & fld.Name & "," n = n + 1 bRepresentAsRange = True Else If bRepresentAsRange Then bRepresentAsRange = False bRangeBroken = True End If End If Next fld If Not bRangeBroken Then Worksheets("Forecast").Range("ProbSelection") = " >= " & tbl(0) Else Worksheets("Forecast").Range("ProbSelection") = Left(sSelection, Len(sSelection) - 1) End If End With 

也许在你的数据源中添加一个在所有行上执行sumif的列。 不知道你的数据是什么样的,但是像=(sumif([列保持枢轴行头],[行中当前行头值],概率列)>。 当数据透视表显示> 20%时,这会给你一个True。
然后在这个列的数据透视表上添加一个filter以获得TRUE值

使用值filter。 点击行标签旁边的下拉箭头,您会看到sortingA到Z,标签filter和值filter之间的select。 select“大于”值filter可让您select要使用哪个列过滤出行,即使该列没有下拉箭头本身。