Excel - 在另一个工作表中查找具有相同值的单元格,并将其左侧的值输入

21

我有一个Excel生成的报告,其中包含员工的编号,但没有他/她的姓名。并非每个员工在任何给定的日期都会出现在此工作表上。

在第二个工作表中,我有所有员工编号和姓名的列表。

我希望在第一个工作表中使用一个公式,查找第二个工作簿上相同的值(员工编号),然后在第一个工作簿上输入那个值右侧的单元格的数值(员工姓名)。有没有办法做到这一点?谢谢!


6
我不认为这是重复的。这个问题是关于查找相应的值,而这个问题指向的重复问题是关于查找相应位置的。它们相似,但明显不同,这体现在问题本身和回答中。 - Leo
2个回答

41
可能最简单的方法是使用VLOOKUP()函数。在新版本的Excel中,似乎不再需要对第二个工作表进行排序。

举个例子,如果你有一个名为“Sheet2”的表格,其中包含两列——A列为员工编号,B列为员工姓名;而你的当前工作表格中D列包含员工编号,你想要填写E列,则在E2单元格中输入以下公式:
=VLOOKUP($D2, Sheet2!$A$2:$B$65535, 2, FALSE)

然后只需将此公式向下填充到D列的其余单元格中。

说明:

  • 第一个参数$D2指定要搜索的值。
  • 第二个参数Sheet2!$A$2:$B$65535指定要搜索的单元格范围。Excel将在该范围的第一列(在本例中为Sheet2!A2:A65535)中搜索该值。请注意,我假设您在第1行中有一个标题单元格。
  • 第三个参数2指定要从搜索范围内返回的列的基于1的索引。值2将返回范围Sheet2! $ A $ 2:$ B $ 65535中的第二列,即B列的值。
  • 第四个参数FALSE表示仅返回完全匹配项。

很好的解释,这对我帮助很大。然而,我的Excel使用分号来分隔函数输入参数。不知道这是版本问题还是打字错误? - Leo
@Leo是否可能与https://superuser.com/questions/496614/function-argument-delimiter-excel-2011-for-mac-os-x有关?在我的版本(Windows,美式英语)中,它始终是逗号。 - lc.

5
假设员工编号在第一列,员工姓名在第二列:
=VLOOKUP(A1, Sheet2!A:B, 2,false)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接