That's why I mentioned Publish. Visual LISP cannot continue to run in a new active document. It will only run in the context of the original document. However, as long as the newly opened document is not made active, you can use ActiveX from Visual LISP to affect that document. Most of the stuff you can do in VBA you can do in Visual LISP via ActiveX.