It's wrong but you did not post the right one or explain what's wrong?

I am not a macro wizard so I don't see what's wrong or I'd post the correction.

semicolon instead of comma?

/cast [target=focus, exists, harm] Polymorph; [target=focus1target, exists, harm] Polymorph; [target=target, exists, harm] Polymorph; [target=targettarget, exists, harm] Polymorph

Is that it?