=IFERROR(INDEX(商品表!B$2:B$300,MATCH(进销表!$D5,商品表!$A$2:$A$300,0)),"")

公式的解释

IFERROR(公式,"")
如果公式结果是错误值,返回空,否则等于公式结果。
INDEX(数组,位置)
返回数组(行或列)的第几个元素。
MATCH(单元格,数组,0)
求单元格数值在数组中的位置,0为精确查找,省略或者1为近似查找。
IFERROR(INDEX(商品表!B$2:B$300,MATCH(进销表!$D5,商品表!$A$2:$A$300,0)),"")
返回商品表B$2:B$300区域的第N个单元格的值,如果没有,就返回空值。
N的确定:进销表单元格$D5的值,在商品表区域$A$2:$A$300中的位置。
这个公式思路有点迂回,不怎么合理。就是确定进销表D5单元格有没有在商品表!$A$2:$A$300区域存在,如果存在就返回进销表D5,不存在就返回空。用
IF(COUNTIF(商品表!B$2:B$300,进销表!$D5),进销表!$D5,"")更符合逻辑。
温馨提示:答案为网友推荐,仅供参考
相似回答