It could be that [Value 2] is not actually Null, but rather an empty (zero length) string. Try;
IIf(Nz([Value 2], "")="","",[,sw_] & [Label 2] & [=1] & [Value 2])
On a side note, you should consider removing special characters and spaces from your field names if possible. It just causes...