In general, Modules are used to make routines re-usable. A collection of re-usable routines is sometimes called a library.
When a module has a combination of Public and Private routines, and contains "Properties" (ie, it contains Property Let, Property Get, and Property Set procedures), then the MS Access help refers to it as an "Object". (Not a particularly accurate definition.)
The only real trick is to remember to change the procedures (functions and subroutines) from Private (the default value) to Public.
I add _lib (Library) to the end of procedure names to indicate that the code is located in a module. This just makes it a little easier for other people to read my code. If you use lots of modules (libraries), then you may want to add additional identifiers to indicate which module it is in.
Linking to Modules in Another mdb File
Modules I Use
|ExtractData_lib||Returns the string between 2 patterns|
|TrimAll_lib||Removes leading tabs and spaces|
|Replace_lib||Replaces all occurances of one string with another|
|ReplaceFirst_lib||Replaces the first occurance of one string with another|