Nice thing randem!
I'll like to add
3) Check whether you need a timer at all or not
Timers run in seperate thread. Your code continues to run after enabling the timer. Usually u want to just wait for the timer to finish and then resume your code. In such cases just use loops with DoEvents instead of timers.