使用立方体创建指定时间段的前10项列表



我使用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"
)

最新更新