使用VLOOKUP返回空格(Microsoft Excel)
当您使用VLOOKUP从数据表中返回值时,该函数不会在返回的空白和零值之间进行区分。如果源值为零,则VLOOKUP返回0。同样,如果源为空,则VLOOKUP仍返回值0。出于某些目的,这可能不行,您需要知道要查找的单元格是空白还是空白。如果它确实包含0。
可以采用许多不同的解决方案。一种解决方案依赖于以下事实:即使VLOOKUP返回0,它也将正确报告源单元的长度。因此,如果在返回的值上使用LEN函数,则如果源单元格为空,则LEN函数将返回0,但是如果源单元格包含0,则LEN返回1(0值的长度为1个字符)。这意味着您可以使用以下公式代替标准的VLOOKUP:
=IF(LEN(VLOOKUP(B1,D:E,2,0))=0,"",VLOOKUP(B1,D:E,2,0))
在这种情况下,如果VLOOKUP返回的长度为0,则Excel实际上不会进行查找-它将强制返回空白。仅当长度不为0时,才执行实际的VLOOKUP。
在同一概念上还有其他变体,每个变体测试所引用数据的不同特征,然后决定是否实际查找该数据。例如,此变体直接测试以查看源是否为空:
=IF(VLOOKUP(B1,D:E,2)="","",VLOOKUP(B1,D:E,2))
还可以修改公式以检查源单元格是否存在多种情况。例如,如果源为空白或源中包含#N / A错误,则此变体将返回空白:
=IF(ISNA(VLOOKUP(B1,D:E,2,0))+(VLOOKUP(B1,D:E,2,0)="") ,"",VLOOKUP(B1,D:E,2,0))
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(3075)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本:
链接:/ excelribbon-Returning_Blanks_with_VLOOKUP [使用VLOOKUP返回空格]。