如何在MDX计算度量上使用Excel单元格?

时间:2016-04-29 12:01:06

标签: excel mdx

我们使用Excel来访问SSAS Olap多维数据集。我们使用excel表中定义的一些计算度量。

在其中一个上,我们需要使用在特定单元格上输入的用户值。

有点

[Measures].[Sales]*$a$10

我们找不到任何办法。有什么想法吗?

修改

由于我们似乎无法找到解决方案,我们正在考虑使用有效值创建一个新表(它是一个有限的短列表)并将它们用作过滤器,因此我们可以使用公式上的值。 我无法想象如何做到这一点,因为它将是一个与多维数据集中的任何其他表无关的表... 这有什么意义吗?

修改:已解决,请参见下文。

1 个答案:

答案 0 :(得分:0)

哈哈哈哈哈......这可能是我很久以来最疯狂的想法......但它确实有效!

我们刚刚创建了一个 Excel宏!! ,在指定的单元格更改时重建计算的度量:

ActiveWorkbook.Connections( _
    "MyHost MyOLAP MyCube").OLEDBConnection. _
    CalculatedMembers("[Measures].[MyFormula]").Delete
ActiveWorkbook.Connections( _
    "MyHost MyOLAP MyCube").OLEDBConnection. _
    CalculatedMembers.AddCalculatedMember Name:="[Measures].[MyFormula]", _
    Formula:=Array("[Measures].[Sales]*" & Range("d1").Value), _
    Type:=xlCalculatedMeasure,SolveOrder:=0, ParentHierarchy:= _
    "[Measures]", NumberFormat:=xlNumberFormatTypeDefault
ActiveSheet.PivotTables("MyPivotTable").RefreshTable

:):)