That's neat, I like that
However I can't work out why it needs a single pass through a timer Sub.
I tried disabling the timer and calling that Sub directly and it still seems to work the same, at least on the desktop. What subtlety am I missing that couldn't be achiieved with a suitably positioned DoEvents if a control refresh was required?