如何跨多个Excel数据表,一对多查找且合并成一个表

Excel学习世界 2023-11-03 11:22:50

这是一个求助案例:关于跨多个数据表的一对多查找匹配。

案例:

下图 1 中的上下两个表是有关联的,“姓名”列中凡是显示部门名称的单元格,都有对应的具体成员姓名。请将两张表匹配后,将所有的姓名都列在同一列中。

效果如下图 2 所示。

解决方案:

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

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

表格已经上传至 Power Query。

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

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

5. 选择下方数据表的任意单元格 --> 选择“数据”-->“从表格”

6. 点击“确定”。

现在两个表都上传到 Power Query 了。

7. 在左侧的“查询”区域选中“表1”--> 选择菜单栏的“主页”-->“合并查询”

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

选择“表1”中的“姓名”列

在下拉框中选择“表2”--> 选择“部门”列

9. 选择菜单栏的“添加列”-->“索引列”

10. 点开“表2”旁边的扩展钮 --> 仅勾选“姓名”--> 取消勾选“使用原始列名作为前缀”--> 点击“确定”

11. 删除“索引”列。

12. 选择菜单栏的“添加列”-->“条件列”

13. 按以下方式设置:

列名:选择“姓名.1”

运算符:选择“等于”

值:输入“null”

输出:点击格式旁边的下拉菜单 --> 选择“选择列”

在下拉菜单中选择“姓名”

在 ELSE 的格式菜单中也选择“选择列”--> 选择“姓名.1”--> 点击“确定”

14. 删除“姓名”和“姓名.1”列。

15. 将“自定义”列拖动到第二列,并将其标题修改为“姓名”。

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

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

18. 在工作表右侧的“工作簿查询”区域选中“表1”--> 右键单击 --> 在弹出的菜单中选择“加载到”

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

右侧绿色的表格就是所需的最终结果。

0 阅读:12

Excel学习世界

简介:Excel 学习交流