基于多维数据集的Excel数据透视表-如何基于维度的两个成员拆分度量值

基于多维数据集的Excel数据透视表-如何基于维度的两个成员拆分度量值,excel,pivot,mdx,cube,Excel,Pivot,Mdx,Cube,我的立方体有销售价值 也是一个项目维度。项目层次结构的成员为“Cat1”和“Cat2”。Cat1和Cat2可以分别具有各种不同的值 我正在尝试根据Cat1和Cat2的特定值定义成员。 新成员将在数据透视表列中用于按新成员拆分销售 "1Cup" where Cat1 = Coffee and Cat2 IN (Cup,Cup1) "OtherCoffee" where Cat1 = Coffee and Cat2 IN (Creamer,Accessory,Box) "AllOtherSales"

我的立方体有销售价值

也是一个项目维度。项目层次结构的成员为“Cat1”和“Cat2”。Cat1和Cat2可以分别具有各种不同的值

我正在尝试根据Cat1和Cat2的特定值定义成员。

新成员将在数据透视表列中用于按新成员拆分销售

"1Cup" where Cat1 = Coffee and Cat2 IN (Cup,Cup1)
"OtherCoffee" where Cat1 = Coffee and Cat2 IN (Creamer,Accessory,Box)
"AllOtherSales" Cat1 = OPS and Cat2 IN (Accessory,Battery,Electronics...and on and on)

我该怎么做呢?

如果您无法更改多维数据集,那么就不可能轻松创建计算内存,除非-根据,如果您有Excel 2013。在旧的Excel版本中,我知道的唯一可能性是安装,这是一个Excel插件,允许您添加MDX计算的度量值,然后在查询中使用

假设您可以编写MDX成员定义,并且假设您的
层次结构位于维度
Dim
中,“Cat1”和
Cat2
是级别,则它们所基于的属性也命名为“Cat1”和
Cat2
,您要定义的成员应该位于顶层,就在
All
成员的正下方,我假设该成员被称为
All
(您知道,我必须假设有关多维数据集和您的需求的许多详细信息),MDX如下所示:

对于
1Cup
成员,成员名称为
[Dim].[Item].[All].[1Cup]
,定义为

Aggregate({ [Dim].[Cat1].[Coffee] } * { [Dim].[Cat2].[Cup], [Dim].[Cat2].[Cup1] })
与其他成员类似,您要使用的每个新名称都将是一个单独的成员。
属性,则定义成员的MDX类似于

如果无法更改多维数据集,则无法轻松创建计算成员,除非-根据,如果您有Excel 2013。在旧的Excel版本中,我知道的唯一可能性是安装,这是一个Excel插件,允许您添加MDX计算的度量值,然后在查询中使用

假设您可以编写MDX成员定义,并且假设您的
层次结构位于维度
Dim
中,“Cat1”和
Cat2
是级别,则它们所基于的属性也命名为“Cat1”和
Cat2
,您要定义的成员应该位于顶层,就在
All
成员的正下方,我假设该成员被称为
All
(您知道,我必须假设有关多维数据集和您的需求的许多详细信息),MDX如下所示:

对于
1Cup
成员,成员名称为
[Dim].[Item].[All].[1Cup]
,定义为

Aggregate({ [Dim].[Cat1].[Coffee] } * { [Dim].[Cat2].[Cup], [Dim].[Cat2].[Cup1] })
与其他成员类似,您要使用的每个新名称都将是一个单独的成员。
属性,定义您的成员的MDX类似于

我是否正确理解您认为
是层次结构的名称,
Cat1
Caz2
是该层次结构的级别?您希望在多维数据集中而不是Excel中创建成员,即。E您可以更改多维数据集吗?我无法修改多维数据集,因此需要在Excel中执行此操作。项是层次结构,Cat1和Cat2是级别。Cat1和Cat2中有我需要(通过公式?)组合成“超级”类别的成员,该类别随Cat1和Cat2组合的不同而变化。我是否正确理解
Item
是层次结构的名称,
Cat1
Caz2
是该层次结构的级别?您希望在多维数据集中而不是Excel中创建成员,即。E您可以更改多维数据集吗?我无法修改多维数据集,因此需要在Excel中执行此操作。项是层次结构,Cat1和Cat2是级别。在Cat1和Cat2中,我需要将成员(通过公式?)组合成一个“超级”类别,该类别随Cat1和Cat2组合而变化。