使用Excel Powerpivot中的CUBEMEMBER获取更高级的元素

我有一个科目表,根据数据库表上的SQL查询加载到PowerPivot中; 连接名为“ThisWorkbookDataModel”,PowerPivot中的表名为[Accounts]。

会计科目表结构如下:

  • 组 – >类别 – >代码 – >描述。

例如:

  • 组:收入
  • 类别:住宅
  • 帐户代码:1001
  • 帐户说明:合同

我希望能够通过dynamic指定代码来提取组,类别和描述。

例如,假定单元格D1logging帐户代码1001,公式:

CUBEMEMBER("ThisWorkbookDataModel","[Accounts].[Account Code].&["&D1&"]") 

会返回“1001”。 这很好,但我不能去“上线”,并从帐户代码中导出帐户描述,类别和组。

能否请你帮忙?

首先将4个字段添加到Power Pivot加载项窗口中的层次结构中,如此处所述。

然后你可以很容易地通过.Parent像这样浏览层次结构:

 CUBEMEMBER("ThisWorkbookDataModel","[Accounts].[Hierarchy Name].[Account Code].&["&D1&"].Parent") 

请注意,您应该将层次结构名称replace为新层次结构的名称。

使用帐户层次表(Greg指出):

  • 提取账户面额(基于账户代码):

CUBEMEMBER(“ThisWorkbookDataModel”,“[Accounts]。[GLAccount]。[Account Code]。&[”&$ D1&“]。Parent”)

  • 提取帐户类别(基于帐户说明):

CUBEMEMBER(“ThisWorkbookDataModel”,“[Accounts]。[GLAccount]。[Account Description]。&[”&$ E1&“]。Parent”)

  • 提取账户组(基于账户类别):

CUBEMEMBER( “ThisWorkbookDataModel”, “[帐户] [GLAccount]。[类别]&[” &$ C1& “]。父母”)

哪里:

  • GLAccount是层次结构的名称;
  • 单元格D1包含帐户代码
  • 单元E1主机帐号说明;
  • 单元C1主机帐户类别

好,易于。 非常感谢!