Perhaps I already know why it is stopped while the code is executing.
It is likely that the source book is activated when you copy the range in the worksheet. And the written code predicts that the PP application is always active.
After copying the range, you should activate PP, give a moment of rest (DoEvents) and we can go further.
I showed the solution in another thread:
http://www.vbaexpress.com/forum/show...l=1#post390774
Artik