Excel 索引匹配或 Vlookup 并复制

Excel 索引匹配或 Vlookup 并复制

我有一张包含 3 列的工作表,如下所示。我还有另一张名为工作表 2 的工作表,其 A 列中只有名字,这些名字与工作表 1 的 A 列中的名字相同。

在此处输入图片描述

在此处输入图片描述

我想在工作表 2 的 B 列中写入一个公式,该公式将工作表 1 的 A 列中的名字与 A 列中的名字进行匹配,并匹配在 C 列中找到的“否”,然后复制在工作表 1 的 B 列中找到的信息。

答案1

您可以在带有通配符的精确匹配模式下使用 INDEX/MATCH。

第二张表中的 B1 至 B4 将是:

=IF(UPPER(INDEX(Sheet1!$A$1:Sheet1!$C$4,MATCH(A4&"*",Sheet1!$A$1:Sheet1!$A$4,0),3))="NO",INDEX(Sheet1!$A$1:Sheet1!$C$4,MATCH(A4&"*",Sheet1!$A$1:Sheet1!$A$4,0),2),"")

Excel 会处理大小写不匹配的问题,并且在 sheet1 中名称的首字母大写。

下面的示例与作者帖子中的示例略有不同,以说明第二张表 A 列中的名称列表可以按任何顺序排列。因此 Bob 在 A3 上重复出现,并且正如预期的那样,B3 中没有任何输出,因为 Bob 在第一个表的 C 列中输入的是“是”。

在此处输入图片描述

答案2

一种选择是只添加一列,从工作表 1 的 A 列中删除名字。然后,您可以使用此列作为参考。

步骤 1:在 Sheet 1 中,在当前 A 列和 B 列之间插入一个新列,并将此公式粘贴到第一行(假设第一行包含实际数据 - 如果不是,请将“A1”中的“1”更改为第一行的内容):。=LEFT(A1,FIND(" ",A1)-1)将此公式拖到工作表的下方。这将创建一个名字列。

步骤 2:现在,您可以在 Sheet 2 上的 VLOOKUP 中引用名字列。例如,在 Sheet 2 的 B 列中粘贴此公式:=VLOOKUP(A1,Sheet1!B1:D4,3,FALSE)并将其向下拖动。当然,您可能需要更改公式引用的确切行,因为您的示例未指示行号。

瞧!

根据需要进行编辑,仅返回 C 列中包含“否”的记录

...最后,只需将 Vlookup 包装在 IF 语句中,然后像之前一样将公式向下拖动:

IF (Sheet1!C1="no", VLOOKUP(A1,Sheet1!B1:D4,3,FALSE),"")

相关内容