大家知道,在Excel中用VLOOKUP函数进行查找时,如果第四个参数为FALSE且查找的内容为文本时,就可以使用通配符——问号 (?) 和星号 (*)。但如果所查找的文本中本身包含星号,直接使用VLOOKUP函数可能不会得到正确的结果。例如在查找下图中编号“G62*178*C01”所对应的第一个数量时,如果直接使用公式:
=VLOOKUP(E3,B2:C12,2,)
将返回“G62*178*3C01”所对应的数量“115”。
这是由于VLOOKUP函数在查找“G62*178*C01”时,会把“*”号作为通配符,从而认为“G62*178*2C01”、“G62*178*3C01”都属于“G62*178*C01”。
这时要得到正确的结果,可以用下面的公式,假如要查找的文本在E3单元格,在F3中输入:
=VLOOKUP(SUBSTITUTE(E3,"*","~*"),B3:C12,2,)
说明:在查找星号或问号字符本身时,需在星号或问号前添加一个波形符(~)。公式中先用SUBSTITUTE函数把星号替换成波形符+星号 (~*),然后再用VLOOKUP函数查找。
或使用下面的数组公式:
=INDEX(C2:C12,MATCH(TRUE,B2:B12=E3,))
公式输入完毕,按Ctrl+Shift+Enter结束。 |