![]() |
Determine when Word document opens successfully from Excel VBA
Is there a way in Excel VBA to determine when a Word document has
been opened successfully? Or better yet, when the Word application will be free to open another document? In a loop in Excel VBA I open up Word documents one-by-one, the Word document automatically does some things (like update links and print), and meanwhile Excel checks to see if Word is done (results in a PDF file), then moves to the next document. After several documents are successfully processed, my VBA code in Excel fails on trying to open up the next Word document: Dim WordDoc as Word.Document . . . Set WordDoc = WordApp.Documents.Open(sWordDocPath & sWordName) and returns the error "Microsoft Office Excel is waiting for another application to complete an OLE action." Things get hung up from there, and I have to use TaskManager to kill the WinWord process. I tried throwing in some Sleep commands, to give things time to finish, but that did not seem to improve anything. I tried checking the value of WordDoc after the .Open statement, but it never reaches it. It gets hung on the .Open statement. I am not sure how to diagnose things from here. Thanks in advance for your help! Alan |
Determine when Word document opens successfully from Excel VBA
Try using the timer funciton in VBA
-- If this post helps click Yes --------------- Jacob Skaria "Alan" wrote: Is there a way in Excel VBA to determine when a Word document has been opened successfully? Or better yet, when the Word application will be free to open another document? In a loop in Excel VBA I open up Word documents one-by-one, the Word document automatically does some things (like update links and print), and meanwhile Excel checks to see if Word is done (results in a PDF file), then moves to the next document. After several documents are successfully processed, my VBA code in Excel fails on trying to open up the next Word document: Dim WordDoc as Word.Document . . . Set WordDoc = WordApp.Documents.Open(sWordDocPath & sWordName) and returns the error "Microsoft Office Excel is waiting for another application to complete an OLE action." Things get hung up from there, and I have to use TaskManager to kill the WinWord process. I tried throwing in some Sleep commands, to give things time to finish, but that did not seem to improve anything. I tried checking the value of WordDoc after the .Open statement, but it never reaches it. It gets hung on the .Open statement. I am not sure how to diagnose things from here. Thanks in advance for your help! Alan |
Determine when Word document opens successfully from Excel VBA
Originally, I was starting up the Word application, processing all
the Word documents, then quitting the Word application. When I changed this to start the Word app, process one document, quit the Word app, then repeat, it worked. Also, I used Sleep() vice Application.Waittime. Alan |
All times are GMT +1. The time now is 07:32 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com