根据多列匹配出结果,用ExcelPowerQuery点几下鼠标就能一本万利

Excel学习世界 2023-01-22 11:01:40

之前的案例,根据多列中的值查找结果,并求和,除了用公式,这题用 Power Query 来解也是极好的。

案例:

根据下图 1 中右侧的的查询值,在左侧查询出对应的获客数,如果是一对多结果,则求和。

效果如下图 2 所示。

解决方案:

1. 选中左侧数据表的任意单元格 --> 选择菜单栏的“数据”-->“从表格”

2. 在弹出的对话框中保留默认设置 --> 点击“确定”

表格已上传至 Power Query。

3. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载至”

4. 在弹出的对话框中选择“仅创建连接”--> 点击“加载”按钮

5. 选中右侧数据表的任意单元格 --> 选择“数据”-->“从表格”

6. 点击“确定”

第二个表格也上传到了 PQ。

7. 在“查询”区域选择“表1”--> 选中“获客数”列 --> 选择菜单栏的“转换”-->“逆透视列”-->“逆透视其他列”

8. 删除“属性”列

9. 选择菜单栏的“主页”-->“分组依据”

10. 在弹出的对话框中按以下方式设置 --> 点击“确定”:

在第一个下拉菜单中选择“值”

新列名:输入“总获客数”

操作:选择“求和”

柱:选择“获客数”

11. 在“查询”区域选择“表2”--> 选择菜单栏的“添加列”-->“索引列”-->“从 1”

12. 选择菜单栏的“主页”-->“合并查询”

13. 在弹出的对话框中按以下方式设置 --> 点击“确定”:

选中“查询值”列

在下拉菜单中选择“表1”--> 选中“值”列

14. 点开“表1”旁边的扩展按钮 --> 仅勾选“总获客数”--> 取消勾选“使用原始列名作为前缀”--> 点击“确定”

15. 选中“索引”列 --> 选择“主页”-->“升序排序”

16. 删除前两列

17. 选择菜单栏的“主页”-->“关闭并上载”-->“关闭并上载至”

18. 在弹出的对话框中选择“表”--> 选择“现有工作表”及所需加载到的位置 --> 点击“加载”

绿色区域就是按要求匹配的结果。今后无论源数据表还是查询值有更新,只要在绿色的表格处刷新,就能实时更新结果。

1 阅读:23

Excel学习世界

简介:Excel 学习交流