当单元格值有一段时间时,VLOOKUP将返回#N / A

我正在写一个公式为Excelfind一个值单元格A13时更改然后将A13的值与工作簿中的其他工作表进行比较,然后返回它find的值。 我很努力使这个公式工作,因为在某些原因,当单元格有一段时间VLOOKUP返回“#N / A”。 当我使用TRUE并且进行一个近似匹配时,它有时会起作用。 这是一个在search完全匹配时返回#N / A的值的例子:ABCD.8G74。 我想在vlookup中使用FALSE来获得完全匹配。 这是公式:

=IF(VLOOKUP(A13,sheet2!G2:J5,1,FALSE)=A13,VLOOKUP(A13,sheet2!G2:J5,2,FALSE),IF(VLOOKUP(A13,sheet3!G2:J5,1,FALSE)=A13,VLOOKUP(A13,sheet3!G2:J5,2,FALSE),IF(VLOOKUP(A13,sheet4!G2:J5,1,FALSE)=A13,VLOOKUP(A13,sheet4!G2:J5,2,FALSE),"0"))) 

如果您还有其他问题,请告诉我。 感谢您的帮助!

按照定义精确匹配意味着它将查找查找表中的EXACT值。 如果该值在表中不确切,则返回#N / A。 如果您在A13中input的值具有句点,而表中的值不具有句点,则需要在执行vlookup之前find删除句点的方法。

您可以使用替代函数来执行此操作,并将其作为查找值传递:

 =SUBSTITUTE(A13,".","") 

问题是,当它在第一张纸上没有find它时,它返回#N/A并尝试将一个错误与一个单元格值进行比较将返回错误并将IF短路。

将你的VLOOKUPS包裹在IFERROR中:

 =IFERROR(VLOOKUP(A13,sheet2!G2:J5,2,FALSE),IFERROR(VLOOKUP(A13,sheet3!G2:J5,2,FALSE),IFERROR(VLOOKUP(A13,sheet4!G2:J5,2,FALSE),0)))