Excel PowerPivot中如何基于关联列获取多行唯一值并按Org_ID筛选
在Excel PowerPivot中实现按Org_ID筛选并展示Sys_ID_FK、Sys_ValueLookUp的解决方案
我来帮你搞定PowerPivot里的这个展示和筛选需求,按照下面的步骤操作应该就能解决问题:
一、先确认数据模型的关联正确性
你用=Related(Table1[Sys_Value])生成了Sys_ValueLookUp,这说明Table2是关系里的多端,Table1是一端,首先得确保这个关联没毛病:
- 打开PowerPivot窗口,切换到「关系图视图」
- 检查Table1的
Sys_ID和Table2的Sys_ID_FK之间有没有一条连线,且关系类型是「一对多」(Table1是“一”,Table2是“多”) - 如果没关联上,手动拖动Table1的
Sys_ID到Table2的Sys_ID_FK上,完成关系创建
二、一步步创建符合需求的PowerPivot图表
1. 配置图表的核心字段
- 回到Excel界面,插入你需要的PowerPivot图表(比如簇状柱形图、条形图都可以)
- 在右侧的「字段列表」里展开Table2:
- 把
Sys_ID_FK拖到**轴(类别)**区域,作为图表的分类项 - 把
Sys_ValueLookUp拖到值区域——这里注意,默认是「求和」,但因为每个Sys_ID_FK对应的Sys_Value是固定的,求和会把重复值加起来(比如全选时Sys-1会显示30),所以右键点击值区域的Sum of Sys_ValueLookUp,选择「值字段设置」,把汇总方式改成「最大值」或者「平均值」,这样就能显示正确的10/20
- 把
2. 添加Org_ID筛选器
- 选中图表后,Excel顶部会出现「分析」选项卡,点击「插入切片器」
- 在弹出的窗口里勾选Table2的
Org_ID字段,点击确定 - 现在你点击切片器里的Org-1、Org-2等选项,就能筛选出对应组织下的
Sys_ID_FK和Sys_ValueLookUp数据了
三、排查可能的坑
如果全显示时结果不对,大概率是这几个问题:
- 字段类型不匹配:检查Table1的
Sys_ID和Table2的Sys_ID_FK是不是同一种类型(比如都是文本),类型不匹配会导致关联失效,Related函数取不到正确值 - 关系方向错了:如果Table1被设成了多端,
Related函数会报错,必须确保Table1是一端(每个Sys_ID唯一),Table2是多端(一个Sys_ID_FK对应多条记录) - 聚合方式选错:刚才提到的求和问题,一定要改成最大值/平均值,不然重复的数值会被累加
内容的提问来源于stack exchange,提问作者hans2k6
相关产品推荐
相关产品推荐

