Using ExecuteActions on a single action is like the behaviour you get when an action is in a macro. It only gets executed for a fixed (short) duration. There are no parameters on ExecuteActions to specify how long to send the codes.
Using OnHold with OnHoldInterval is equivalent to pushing teh button several times. It is not like a continuous push.
I think Lyndel's suggestion of adjusting the duration is most likely to get what you want. Just adjust the code's duration and use a single ExecuteActions.