what is the difference between sub and private sub?
The terms Public and Private are used in relation to Modules. The basic concept is that Public variables, subs or functions can be seen and used by all modules in the workbook while Private variables, subs and functions can only be used by code within the same module.