Elweit
If the macro's actions can be executed in sequence, both solutions can be viable. If the execution is not serialized (even if I have difficult to think why), only the first suggestion can help.
macro actions are not all serial
try this when you fight beast - use macro to 1) target friend, 2) heal, 3) retarget beast. middle step will fail saying cannot heal beast i believe :(
instead you must do 1 and 2 with one macro then 3 with another macro (or manual)