Hi,
=ISBLANK() will of necessity return FALSE since there is something in B4, i.e. a formula.
Xl clearly regards a formula which returns "" (double quotes) as being Text, since the =ISTEXT(B4) returns TRUE, whilst =ISNUMBER(B4) returns false.
Interestingly though, if you get VBA to populate the cell with double quotes:
it does return the null value you're after. It seems the proverbial sledgehammer/nut solution, but about the only thing I can suggest is have B4 be the subject of a Worksheet_SelectionChange event and put Your IF test in there.
HTH
Bookmarks