我有一个如下数据:
Brands Sales Category Index
Brand1 588 A 1
Brand2 846 A 2
Brand3 827 A 3
Brand4 951 A 4
Brand5 673 B 5
Brand6 637 B 6
Brand7 575 B 7
Brand8 995 B 8
Btand9 737 C 9
Brand10 661 C 10
Brand11 729 C 11
Brand12 789 C 12
Brand13 836 C 13
问题陈述:
我试图将Category用作切片器。但是我希望与选择的切片器无关,表视图中都将显示类别A的行。
示例:假设如果在slicer中选择了Category B,那么在这种情况下,表格应返回所有行,直到第8级为止。
下面是选择类别C时所需输出的示例:
如您所见,可视表同时具有类别A和类别C。
类似地,当同时选择B和C时,我应该能够显示所有类别(A,B和C)。
尝试了什么:
我在考虑是否可以使用条件DAX,该条件DAX对切片器中的选定值返回1,并将rest标记为0,因此可以将其用作可视过滤器并过滤出0。我尝试了Filter
与{{ 1}}和in Filters
,但没有用。甚至下面的度量也返回所有行,而不是SELECTCOLUMN
Selected values|| category="A"
我也尝试过类似的事情:
test1 = CALCULATE(MIN('Table'[Index]),FILTER(ALLEXCEPT('Table','Table'[Brands]),'Table'[Category]=SELECTEDVALUE('Table'[Category]) || 'Table'[Category]="A"))
但这将所有结果设为1,对于不符合条件的行则不给出0(请注意,我在此处阻止了切片器的交互)
任何帮助将不胜感激。
答案 0 :(得分:1)
首先,您需要分离切片器表,因为将值保留在无法达到要求的同一表中。您可以使用以下代码创建自定义表格-
考虑您的基本表名称销售
让我们创建自定义表格类别列表
表的销售额和类别列表
之间没有任何关联
category list =
SELECTCOLUMNS(
sales,
"Category",sales[Category]
)
现在,使用新的自定义表类别列表创建切片器,并在 Measure -
下创建此切片器is filter =
if(
MIN(sales[Category]) = "A",
1,
if (
MIN(sales[Category]) IN VALUES('category list'[Category]),
1,
0
)
)
以下是选择 C 时的示例输出-