我使用Excel 2010创建指定时间段内销售额排名前10位的供应商列表。问题在于,我只需要考虑属于特定集合的客户。我找到了这篇文章,它帮助我从所有客户那里获得了销售额排名前10的供应商,但我正在努力解决如何仅对特定集合的成员进行求和的问题。我尝试了Sum/CrossJoin示例,该示例在评论中进一步降低了页面,但我无法让它工作。可能是因为我在这方面很新手,只是不知道哪些部件应该放在哪里。以下是我到目前为止所拥有的(我的连接名称在单元M1中)://
所有客户(工作完美):
=CUBESET($M$1,
"TopCount(
[Product].[Brand].Children,
10,
Sum(
[Time].[Calendar].[Calendar Month].&[2011]&[8],
[Measures].[Revenue]
)
)",
"Top 10 Brands"
)
客户子集(似乎返回正确集合):
=CUBESET($M$1,
"Intersect(
Intersect(
exists(
[Customer].[Cust Num].Members,
{[Customer].[Is Internal].&[False],[Customer].[Is Internal].[All].UNKNOWNMEMBER}
),
exists(
[Customer].[Cust Num].Members,
[Customer].[Type].&[CAT]
),
ALL
),
exists(
[Customer].[Cust Num].Members,
[Market].[Market ID].[All].Children - [Market].[Market ID].&[3] - [Market].[Market ID].&[4]
),
ALL
)",
"Cust Group"
)
任何帮助和/或指导将非常感激.....提前感谢!
你可以试试这样
=CUBESET($M$1,
"TopCount(
[Product].[Brand].Children,
10,
Sum(
(
[Time].[Calendar].[Calendar Month].&[2011]&[8],
[Customer].[Is Internal].&[False],
[Customer].[Type].&[CAT]
),
[Measures].[Revenue]
)
)",
"Top 10 Brands"
)