Hi,
Try breaking it down into separate pieces and then add each piece together one at a time. For example, since you want the Company name to take precedence, you can check for it first.
IIf(Not IsNull([Company]), [Company],"No Company")
The above will use [Company] if it exists; otherwise, it will use "No Company." If you test it, and it is working as intended, then you can add the LastName instead of "No Company." For example:
IIf(Not IsNull([Company]), [Company], IIf(Not IsNull([LastName]), [LastName], "No Company and no Last Name"))
and so on...
Hope it helps...