Why the need to do this with VBA?

A recular formula in that cell, copied down, shoud do the same thing...
=If(R3="Academic","n/a",IFERROR(IF(OR(K3=I3, AND(K3<I3,K3+L3=I3),OR(ISBLANK(K3:L3),L3=0), K3+L3>I3), 0, I3-K3-L3), ""))