PowerBI: Slicer to filter a table Only when more than 1 value is selected

PowerBI: Slicer to filter a table Only when more than 1 value is selected

我有一个 table 有 5 个类别和单位,显示为 2 种类型,实际和预算。

我想过滤这个 table。仅当在切片器中选择了 2 个或更多值时。像这样的东西。

我想添加一个度量,但不知道如何准确地使用 if 语句。

Measure = IF(COUNTROWS(ALLSELECTED(Report[Shipment Group])) = 1, "Something which would not filter the units", SELECTEDVALUE(Report[Units], SUM(Report[Units])))

不确定这是否正确approach.Would想知道是否还有其他可行的方法。任何帮助都会有所帮助。提前谢谢你。

这个请求有点奇怪,但我想我有一些有用的东西。

  1. 首先,您需要为您的切片器值创建一个单独的 table(否则您无法控制您想要的过滤方式)。您可以点击新的 table 按钮并将其定义如下:

Groups = VALUES(Report[Shipment Group])

  1. 将切片器设置为使用 Groups[Shipment Group] 而不是 Report[Shipment Group]

  2. 按如下方式定义新度量:


Measure = IF(COUNTROWS(ALLSELECTED(Groups[Shipment Group])) = 1,
             SUM(Report[Units]),
             SUMX(FILTER(Report,
                         Report[Shipment Group] IN VALUES(Groups[Shipment Group])),
                  Report[Units]))

或等效

Measure = IF(COUNTROWS(ALLSELECTED(Groups[Shipment Group])) = 1,
             SUM(Report[Units]),
             CALCULATE(SUM(Report[Units]),
                       FILTER(Report,
                              Report[Shipment Group] IN VALUES(Groups[Shipment Group]))))

注意:仔细检查 Power BI 是否没有自动创建 GroupsReport table 之间的关系。你不想要那个。