我有一个函数,当没有匹配时,VLOOKUP
它会返回而不是空白。0
A B
1 Heading Heading
2 Data A The year is 2015
3 Data B 0
为了解决这个问题,我使用了以下substitute
功能:
=IFERROR(SUBSTITUTE(VLOOKUP($A2, 'HC Total'!A:C, 3), "0", ""), "")
总体而言,这解决了问题,但是如果VLOOKUP
值在任何地方包含,0
它都会被替换。例如The year is 2015
变成The year is 215
。
我想避免使用:
=IF(VLOOKUP($A2, 'HC Total'!A:C, 3)=0, "", VLOOKUP($A2, 'HC Total'!A:C, 3))
VLOOKUP
如果能有帮助的话我不想打两次电话。
是否可以使用该SUBSTITUTE
函数来匹配和替换包含 的整个单元格0
,而不存在 的任何出现0
?
答案1
您的 Vlookup() 调用VLOOKUP($A2, 'HC Total'!A:C, 3)
缺少 Range Lookup 参数。当省略此参数时,它将默认为 True。这将告诉函数查找最接近的匹配项,假设数据按升序排序。
尝试使用:
=IFERROR(VLOOKUP($A2, 'HC Total'!A:C, 3,False), "")
如果未找到值,Vlookup() 将返回 #N/A,并且 IfError() 将用空白替换它。
编辑:回应你的评论
我假设您希望返回的值是可以包含零的整数,但大于 Vlookup() 返回的单个 0。
为了解决这个问题,请使用 IFERROR(VLOOKUP()) 组合并对目标单元格使用自定义格式。
0;-0;;@
如果您的值包含小数,则使用
0.00;-0.00;;@