You should organise your code in a way that makes it as easy as possible for you (and/or other future users, maybe) to work with and understand it. It should also be as fast/efficient as possible.
I am not sure if there is any intrinsic difference in the performance of functions/subs. I would only use functions if they performed a significant function that was required more than once in the rest of the code.
What are the UserForm options that you are thinking of?