使用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主机帐户类别
好,易于。 非常感谢!