如何在Excel中的Cubevalue公式中使用通配符?

时间:2016-10-21 14:18:47

标签: excel excel-formula excel-2013 powerpivot powerbi

我试图在excel中的Cubevalue公式(下面)中使用通配符获取值。我找不到任何解决方案。

=CUBEVALUE("ThisWorkbookDataModel","[Measures].[Sum of Bookings_Net]","[Dashboard_Data].[Level_1].[Karnataka_India]")  

我试图获取[level 1]以[_India]结尾的值,我不想在数据模型中创建计算列,因为这个条件可能用于不同的列和不同的条件。
我也试过给出细胞参考(例如 - [Cell A1] =“ _India ),如下所示,但我无法得到结果。

CUBEVALUE("ThisWorkbookDataModel","[Measures].[Sum of Bookings_Net]","[Dashboard_Data].[Level_1].["&A$1&"]")

请帮助我克服这个问题。

1 个答案:

答案 0 :(得分:1)

首先在单元格A1中创建一个=CUBESET函数。

=CUBESET("ThisWorkbookDataModel","Filter([Dashboard_Data].[Level_1].[Level_1].Members, Right([Dashboard_Data].[Level_1].CurrentMember.Name, 6)=""_India"")")  

基本上这是一种叫做MDX的语言,“”双引号转义之前的表达式是:

Filter([Dashboard_Data].[Level_1].[Level_1].Members, Right([Dashboard_Data].[Level_1].CurrentMember.Name, 6)="_India")

然后在=CUBEVALUE公式中引用它:

=CUBEVALUE("ThisWorkbookDataModel","[Measures].[Sum of Bookings_Net]",$A$1)