如何组合两个具有公共列的excel(但不是以相同的顺序排列)

时间:2015-07-21 16:17:04

标签: excel

我有两个excel文件,一个是我从excel中提取的,另一个是我从SAP中提取的。一个文件,较大的文件,有一个名为EmployeeID的列,另一个文件名为EMP_ID,唯一的区别是名称,这些列中的实际员工ID是相同的。我想要做的是将这两个文件组合成一个文件;但是,例如,员工ID' ZZZ'第一个excel文件可能在第1行,但在另一个文件中,EMP_ID为' ZZZ'可能在第35行。

有没有办法以某种方式合并这两个文件?此外,按EMP_ID A到Z排序不会有帮助,因为文件不具有完全相同的条目数,因此不会同步它们以便每个员工都在同一行上每个文件。

如果重要,这两个文件仅供参考。文件1 - http://i.imgur.com/go1S6Ra.png文件2 - http://i.imgur.com/x4vOKIN.png

1 个答案:

答案 0 :(得分:0)

这是一个纯粹的Excel解决方案。打开文件1,然后转到空白页。复制并粘贴文件2的内容。

转到第二张空白列中的第一个单元格并使用vlookup。公式看起来像这样,但你必须修改它。

=VLOOKUP(A1,Sheet1.$A$1:$B$419,2,FALSE)

有四个参数,您需要使用前三个参数来获得您想要的结果。

A1将此更改为员工ID位于第2页的单元格。因此,如果它位于第三列,则应为C1

Sheet1.$A$1:$B$250这是文件1中的数据所在的位置。第一个选项卡的默认名称是Sheet1,但根据您打开文件的方式,它可能会有所不同。第二部分是数据范围。左上角细胞和右下角细胞。因此,如果您在第一张和第1000行中有5列,它将是$A$1:$E$1000(我将在最后解释美元符号)

1第三个参数目标数据在员工ID右侧有多少列。因此,如果你的列是ID,名字,姓氏,那么在这里输入3会得到你的姓氏。

FALSE,这可以控制excel的匹配行为。 TRUE寻找近似匹配,但实际上它只是让事情变得不可预测。

一旦搜索工作并且您正在查找所需内容,请填写该列的其余部分的公式。如果您尝试查找的ID不在Sheet1中,则会出现错误,因此请确保在存在的ID上调整公式。如果您需要查找多个内容(例如名字和姓氏),只需将公式拖到右侧,然后为第三个参数添加不同的数字。

那么美元符号的交易是什么?这会影响将公式向下或向下拖动到新单元格中时发生的情况。如果你这样写:

=VLOOKUP(A1,Sheet1.A1:B100,2,FALSE)

然后将它拖到一个单元格中,你会得到这个:

=VLOOKUP(A2,Sheet1.A2:B101,2,FALSE)

所有行坐标都是一个。如果你把它拖过来,所有的列坐标都会增加一个,如下所示:

=VLOOKUP(B1,Sheet1.B1:C100,2,FALSE)

美元符号将它们冻结到位,因此范围不会漂移。您希望搜索值继续移动,因为每一行都应该查找下一个员工ID,但您不希望该范围移动。