请教Excel函数
从D列中搜索与在B2单元格相匹配的数据,如果找到,将E列相应单元格的数据填入C2单元格中。 这个公式错在哪里了? =IF(ISERROR(VLOOKUP(B2,$d$2:$d$1744,3,)),VLOOKUP(B2,$d$2:$d$1744,3,),"未找到该生"))
你的 VLOOKUP(B2,$d$2:$d$1744,3,) 表达是不规范的!所以总会是错误的。其中的3是指前面的查找范围的第3列,但你的查找范围是单列的D2:D1744。若对应值在E列,则查找范围至少要包括E列,E列相对于D列排行为2。即应该用 VLOOKUP(B2,$d$2:$f$1744,2,) IF的逻辑关系也不对。ISERROR(VLOOKUP(B2,$d$2:$d$1744,3,))成立时引用该VLOOKUP的值,但"未找到该生"也会使它出错,即你的出错后果都导致引用出错结果! 是不是这样会正确了: =IF(--(VLOOKUP(B2,$D$2:$F$1744,2,)),VLOOKUP(B2,$D$2:$F$1744,2,),"未找到该生"))
题中的E列应是B列吧。意思是,在D列查找B2数据,没有,C2返回“未找到该生”;有,C2即返回B2数据。C2公式应是“=IF(ISERROR(VLOOKUP(B2,$D$2:$D$1744,1,)),"未找到该生"),VLOOKUP(B2,$D$2:$D$1744,1,))”。 ★如果是在D:E区域查找,公式则应改成“=IF(ISERROR(VLOOKUP(B2,$D$2:$E$1744,2,)),"未找到该生"),VLOOKUP(B2,$D$2:$E$1744,2,))”。 ★建议,复习一下“=VLOOKUP()”函数语法。 供参考。
好复杂