根据键列合并多个Excel工作簿

时间:2014-01-11 22:23:28

标签: excel primary-key unique vlookup

我从不同的客户端获得七个工作簿(xlsx文件),每个工作簿都有一个工作表。

每张工作表至少有一个公共ID列(UNIQ,PK)。其中一个工作簿包含所有可能的ID列表。其他人可能没有所有ID的记录,但每行都定义了id值。

我需要制作一个最终的工作簿,首先是列ID,然后是每个文件中所有剩余列的并集。

然后我需要通过电子邮件发送final.xlsx,因此它独立于源文件(我不确定是否可以在保留常量值的情况下取消引用它)。

我们可以使用VLOOKUP或内置Excel函数吗?

3 个答案:

答案 0 :(得分:9)

如果您只打算执行此操作一次。你可以这样做:

  1. 转到包含所有ID(Workbook0)
  2. 的工作簿
  3. 在Workbook0中应用vlookup以从workbook1
  4. 获取所需的所有值
  5. 重复此过程以从工作簿2中获取值... 3 ..&所以
  6. 最终你应该有一个工作簿(工作簿0),它将包含你想要的所有数据,ID在第一栏和第一栏中。其他数据在其他栏目中
  7. 现在要取消引用它,选择包含公式和范围的所有单元格。按Ctrl + C
  8. 如果不取消选择,请转到粘贴 - > Paste Special& amp;选择粘贴值。这将仅使用值
  9. 覆盖公式单元格
  10. 然后转到数据 - >连接
  11. 断开与其他工作簿的任何连接(如果存在)
  12. 保存&您已准备好通过电子邮件发送独立文件
  13. 另外,如果这是你必须经常做的事情&步骤保持不变。我建议你在开始之前点击Record Macro,然后执行上面的步骤,稍微调整一下代码,将其保存在其他文件中以备将来使用。从下次你不必手动完成。

答案 1 :(得分:1)

如果您想尝试不同的方法,请查看" Excel查询向导" https://superuser.com/questions/722348/merge-and-combine-in-excel/747430#747430

答案 2 :(得分:0)

将两个excel文件导入Access数据库。

使用“查询”向导从两个表中进行选择,并将结果复制到新的Excel工作表。

Access和Excel在同一个包中,因此无需额外费用。