在两个工作表中查找相同的数据并放入第三个工作表

CSF*_*CSF 3 combine microsoft-excel

将来自两个不同 Excel 电子表格的数据合并到第三个 Excel 电子表格中的最佳/最简单方法是什么?电子表格 1 将只有用户名。电子表格 2 将包含很多信息,包括名字、姓氏、部门、用户名等。 第三个电子表格需要显示电子表格 1 中的用户名以及电子表格 2 中的名字、姓氏和部门。

Isz*_*szi 5

您要使用的功能是VLOOKUP. 您如何执行此操作将略微取决于您的工作表的排列方式,但所有这些都将遵循相同的语法:

=VLOOKUP( lookup value, table array, column index number, range lookup)

  • lookup value 是您要搜索的数据。
  • table array 定义要从中提取数据的单元格,包括包含搜索目标的列
  • column index numbertable array要从中提取信息的列的索引。(例如:对于 A:E 的数组,D 列将是4。)
  • range lookup是一个 TRUE/FALSE 选项,用于指定近似匹配是可接受的,还是需要精确匹配。为了简单起见,我总是将其设置为FALSE. 如果需要更多详细信息,请在 Excel 中按 F1。

公式的格式会略有不同,具体取决于您的数据是否都在同一个工作簿中。我将在下面给出每个示例。

重要说明:您用作 a 的搜索词lookup value 必须可在table arrayVLOOKUP的第一列中找到才能工作。


第一个示例:所有数据都将位于同一个 Excel 工作簿中,但位于不同的工作表中。第一张表标有“用户名”,仅包含用户名。第二张表称为“用户数据”,包含所有用户详细信息。我们将第三张表称为“查找结果”。“用户数据”表包含五列,A:E

  1. 确保“用户数据”电子表格包含 A 列中的所有用户名。
  2. 将所有用户名从“用户名”复制到“查找结果”。
    • 我假设您使用的是标题行,因此“查找结果”上的第一个用户名将位于 A2 中。
  3. “查找结果”上的 B2 公式应为: =VLOOKUP(A2,'User Data'!A:B,2,FALSE)
  4. “查找结果”中 B3 的公式应为: =VLOOKUP(A3,'User Data'!A:B,2,FALSE)
  5. “查找结果”上的 C2 公式应为: =VLOOKUP(A2,'User Data'!A:C,3,FALSE)

你现在应该看到这里的模式了。对于每一列,您应该能够在第一个单元格中编写 VLOOKUP 公式(例如:B2),然后将公式填充到工作表的其余部分。但是,列剪切和粘贴公式并不是那么简单 - 您需要更新table arraycolumn index number值。


第二个例子:每个数据集都保存在自己的 Excel 工作簿中。工作簿中的工作表名称是默认的(即:第一个工作表是“Sheet1”)。工作簿文件名为“Usernames.xlsx”、“User Data.xlsx”和“Lookup Results.xlsx”。这些都在名为“我的电子表格”的文件夹中,该文件夹位于名为“我”的用户的桌面上。

  1. 确保“用户数据.xlsx”表在 A 列中包含所有用户名。
  2. 将所有用户名从“Usernames.xlsx”复制到“Lookup Results.xlsx”。
    • 同样,假设您使用标题行,这将从 A2 开始。
  3. “Lookup Result.xlsx”中B2的公式应该是 =VLOOKUP(A2,'C:\Users\Me\Desktop\My Spreadsheets\[User Data.xlsx]Sheet1'!A:B,2,FALSE)
  4. “Lookup Result.xlsx”中B3的公式应该是 =VLOOKUP(A3,'C:\Users\Me\Desktop\My Spreadsheets\[User Data.xlsx]Sheet1'!A:B,2,FALSE)
  5. “Lookup Result.xlsx”中C2的公式应该是 =VLOOKUP(A2,'C:\Users\Me\Desktop\My Spreadsheets\[User Data.xlsx]Sheet1'!A:C,3,FALSE)

同样,您现在应该能够看到这里的模式。根据需要在行和列之间剪切/粘贴/调整,就可以了。


这里要记住的另一件事是,此工作表不会因“用户名”数据的更改而自动更新。可以使用此方法拉动对“用户数据”表的更改,但如果您还想跟踪“用户名”中的更改,则需要更高级的技术。