Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powerbi DAX开关基于另一列和切片器值更改值_Powerbi_Dax_Powerbi Desktop - Fatal编程技术网

Powerbi DAX开关基于另一列和切片器值更改值

Powerbi DAX开关基于另一列和切片器值更改值,powerbi,dax,powerbi-desktop,Powerbi,Dax,Powerbi Desktop,我熟悉在SWITCH语句中使用带有SELECTEDVALUE的切片器来更改值,但我还需要根据另一列中的数据来执行此操作 Number Letter EW 1 A East 2 A East 3 P West 4 P West NewEW = SWITCH( SELECTEDVALUE(Letter[Letter]), "A", "East", "West") 从上

我熟悉在SWITCH语句中使用带有SELECTEDVALUE的切片器来更改值,但我还需要根据另一列中的数据来执行此操作

Number  Letter   EW
  1       A     East
  2       A     East
  3       P     West
  4       P     West
NewEW = SWITCH(
    SELECTEDVALUE(Letter[Letter]),
     "A", "East",
     "West")
从上表中,我希望根据切片器选择动态地将“EW”列的值更改为East或West。每个字母都有自己的切片器。一个代表A,一个代表P。每个切片器都可以让你选择东部或西部

所以对于“A”切片机,我选择“West”。表中字母为'A'的每一行都会将'EW'值更改为West

我过去使用过下面的代码,允许根据切片器选择更改数据,但当我需要根据字母列更改EW列时,它对我没有帮助

Number  Letter   EW
  1       A     East
  2       A     East
  3       P     West
  4       P     West
NewEW = SWITCH(
    SELECTEDVALUE(Letter[Letter]),
     "A", "East",
     "West")

据我所知,您的工作台配有两个支撑工作台(驱动切片机):

然后,解决方案是设置此度量:

NewEW = 
VAR VrCurrRow = SELECTEDVALUE(Letter[Letter];"")
VAR VrSlicerA = 
CALCULATE(
     SELECTEDVALUE('Slicer A'[EW];"")
)
VAR VrSlicerB = 
CALCULATE(
     SELECTEDVALUE('Slicer B'[EW];"")
)
VAR Result =

 SWITCH(
    VrCurrRow;
    "A";VrSlicerA;
    VrSlicerB
 )
RETURN
Result
结果:


谢谢,这正是我需要的。我唯一需要改变的是用逗号替换分号