我有一个 Excel 工作表,如下所示:
Col1 Col2 Col3 Col4
A Val1 Val2 Val3
B Val4 Val5 Val6
还有另一个
lang
de
en
es
Col2、Col3 和 Col4 取决于语言。 我希望在 Power BI 中拥有的是,如果我为
lang
选择一个值,则应在仪表板中显示特定列。
所以类似
lang = de -> Col1 and Col2
lang = en -> Col1 and Col3
lang = es -> Col1 and Col4
我怎样才能实现这个目标?
我坚信 DAX 是一种专用于分析的语言,但这里有一个针对您的请求的解决方法:
您需要创建一个措施:
SelectedValue =
VAR SelectedLang = SELECTEDVALUE(LanguageTable[lang])
RETURN
SWITCH(
SelectedLang,
"de", SELECTEDVALUE(DataTable[Col2]),
"en", SELECTEDVALUE(DataTable[Col3]),
"es", SELECTEDVALUE(DataTable[Col4]),
BLANK()
)
在此检查所选语言,然后使用 SELECTEDVALUE 和 SWITCH 从相应列返回值,以根据所选语言返回相应的列值。
为了显示列的名称,我创建了另一个度量,然后放入一张卡片并尝试将其调整到表格中:
SelectedColumnName =
VAR SelectedLang = SELECTEDVALUE(LanguageTable[lang], "default")
RETURN
SWITCH(
SelectedLang,
"de", "Col2",
"en", "Col3",
"es", "Col4",
"default"
)