Vlookup函数具有2个可能的查找值

时间:2016-05-09 16:39:31

标签: excel excel-formula vlookup

我在完成VLOOKUP功能时遇到了一些麻烦。

我的功能:

=IFERROR((VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)), "Removed")

- >此函数有效,但不适用于带通配符的值, 在我的表数组中,最后有一些带星号的数值。对于这些特殊数字,它会返回错误(在这种情况下会被删除)。

表格数组的示例:

1.1
1.2
1.3*
1.4
1.5*

- >如何调整VLOOKUP以考虑常规数字和带星号的数字(通配符)?

- > 注意我无法从其他工作簿中删除星号,那些必须留在那里

- >我希望它找到两个值中的任何一个(带星号的那个,或没有的值)

提前谢谢!

3 个答案:

答案 0 :(得分:2)

只是为了得到一个可以接受的答案:

您只需检查没有*的值,如果这会导致错误,请自动添加,如:

=IFERROR(IFERROR(VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE),VLOOKUP($E5&"*",'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)),"Removed")

答案 1 :(得分:1)

尝试通过返回数字和字符值的函数转换查找值,如下所示:

=IFERROR((VLOOKUP(IFERROR(VALUE($E5);$E5),'C:\Users\[Example.xlsx]Sheet1'!$F$7:$G$1048576,2,FALSE)), "Removed")

P.S。:对不起我的英文

答案 2 :(得分:0)

想要在评论中找不到任何人的答案。

<强> - &GT;感谢Dirk Reichel的回答。

=IFERROR(IFERROR(VLOOKUP($E5,'C:\Users\[Example.xlsx]Sheet1'!   
 $F$7:$G$1048576,2,‌​FALSE),VLOOKUP($E5&"*",'C:\Users\[Example.xlsx]Sheet1'!
 $F$7:$G$1048576,2,FALSE)), "Removed")

第一个VLOOKUP查看是否存在没有和星号(*)的值,如果没有值,如果第一个VLOOKUP不正确,它将转到该值。这将引导您进入第二个值,即另一个VLOOKUP。第二个VLOOKUP搜索以星号结尾的值。如果它仍然没有找到值,那么它会喷出“已删除”,如第二个IFERROR函数所示。