使用vlookup公式时的部分匹配

时间:2018-02-20 08:00:57

标签: excel-formula vlookup

我尝试使用其他工作表中的数据填充工作表的空列。对于此,我取决于VLOOKUP

这是我的公式

=VLOOKUP(RC[-6],Sheet2!C[-3]:C[-2],2,FALSE)

我在工作表中查找名称并从该行中获取值。但我面临的问题有时是sheet2(我必须做vlookup)的价值,这实际上是一个人的名字没有中间名。它只有名字和姓氏。由于查找值为中间名,在这种情况下查找不会产生任何结果。因此,即使查找值中有中间名,计划也只使用first和lastname进行查找。我们怎样才能实现

例如,我们的查找值(RC[-6])可以是Donald John Trump。但在搜索表(Sheet2)中,名称可能只是Donald Trump。所以在结果中我需要Donald Trump行,但不是因为我们有Donald John Trump作为查找值。

1 个答案:

答案 0 :(得分:1)

对于任意数量的字符,您都可以use wildcards in VLOOKUP喜欢星号then,或者对于一个字符,您可以const promises = requestedListIdDoc.toString().split(",").map(thisIdDoc => sequelize.models['Document'].findById(thisIdDoc) ); const resultReq = await q.all(promises); const lstDocs = resultReq.filter(myDoc => MyDoc.matriculeDoc != "").map(myDoc => sequelize.models['FolderDocContent'].findOrCreate({ where: {} }) ); await q.all(lstDocs); return response.status(201)

  • 因此,如果您的搜索字词为*,但您还希望找到?,则需要添加星号Donald Trump

    Donald John Trump
  • 或者,如果您的搜索字词为Donald *Trump,但您还希望找到=IF(LEN(A1)-LEN(SUBSTITUTE(A1," ",""))=1,LEFT(A1,FIND(" ",A1)-1) & " *" & RIGHT(A1,LEN(A1)-FIND(" ",A1)),A1) ,那么您需要将中间名替换为星号Donald John Trump

    Donald Trump

然后,您可以使用上述公式作为VLOOKUP中的第一个参数,或使用帮助列,以便查看实际搜索词是什么。