I had a similar issue, but my issue was due to the use of a random value within the vlookup that should have returned a null value but returned a 0.
Substitute function worked like a charm.
=SUBSTITUTE(IF($B12<>$B11,VLOOKUP(RANDBETWEEN(1,22),Sheet1!$A$1:$J$22,5,FALSE),""),0,"")