I may have misled you a bit. Putting ALL your code in stand alone modules is probably going to be more work than you want to do and perhaps not even a good idea. I generally put code in stand alone modules when I need it to be either portable (I can copy it over in to other database) or when I need functionality to be available to more than just one form or other object.
Which probably leads back to your original concern of users getting to your code. That begs the question of how do you anticipate them getting to the code. The most common I've seen is when and error occurs and they end up in the vba code window or when they just get curious and browse around the objects fro the database window.
To prevent and error from putting them in the vba code window I suggest including error trapping. You can search for this topic and get a better understanding if you don't already know how to implement it.
To prevent users from accessing objects from the database window I would simple hide it by disabling it with the Tools->start up->Display database window option. This does not mean that a persistent user could not find away around this but it will discourage most. Nothing is 100% secure
Hope this helps.
As for you code question, you do not use the me. in front of an object reference when you fully qualify it with the forms!myformanme! prefix.