PowerPivot如何跨表统计产品编号在发票购买项列的出现次数
PowerPivot商品出现次数统计解决方案
可直接使用的计算列代码
在Products表中新建计算列,粘贴如下公式即可直接得到预期结果:
= CALCULATE( COUNTROWS(Invoice), SEARCH( ", " & Products[Item] & ",", ", " & Invoice[ItemsPurchased] & ",", , 0 ) > 0 )
逻辑说明
- 你之前的单商品度量值思路是正确的,只需要把固定写死的
"001"替换为当前行上下文的Products[Item]即可实现批量计算 - 公式中额外拼接了
,作为包裹符,是为了避免出现商品编号001误匹配到0011这类长编号的问题,确保只匹配完整的商品编号 - 公式编辑栏不自动补全
Products[Item]属于正常现象,直接手动输入即可,计算列会自动读取当前行的商品编号值
适配Top10筛选的度量值方案
如果需要在数据透视表中做Top10商品筛选,无需为每个商品单独写度量值,新建如下通用度量值即可:
商品购买次数 = CALCULATE( COUNTROWS(Invoice), SEARCH( ", " & SELECTEDVALUE(Products[Item]) & ",", ", " & Invoice[ItemsPurchased] & ",", , 0 ) > 0 )
使用时将Products表的Item、Description字段拖入数据透视表行区域,再拖入该度量值即可自动展示所有商品的统计结果,直接对度量值做Top10筛选即可。
注意事项
如果你的Invoice表中ItemsPurchased字段的分隔符不带空格(格式为001,003),只需将公式中的, 替换为,即可适配。
内容的提问来源于stack exchange,提问作者McDonalds_Ghost
相关产品推荐
相关产品推荐

