Solved

VB Word control

Posted on 2002-03-21
8
160 Views
Last Modified: 2010-05-02
Fom VB I launch a word document and run a macro within that document.  The macro can take some time,  how do I give my VB application back control after I launch the word document.  The application doesn't really care if the word macro completes or fails.  Currently, the VB app has to wait for word to complete before control can be given.

Dim objNewDoc
Set objNewDoc = oWord.Documents.Add(WORKING_DIR & _ "\templates\" & s_reportlocation)

oWord.Visible = True


objNewDoc.PopulateDocument
         
Unload Me
   
'Kill all of the word related objects
Set objNewDoc = Nothing
Set oWord = Nothing
0
Comment
Question by:srobia
8 Comments
 
LVL 1

Expert Comment

by:COAtheGREAT
ID: 6885560
Try using the timer in macro. Wen you call the function it enabled timer control so you get out of function, and on timer event you do what you need.
0
 

Author Comment

by:srobia
ID: 6885565
I'm not sure I know what you mean -- how would I launch the macro to do the program?  Or would I call the timer macro and in the timer macro launch the other macro?
0
 
LVL 1

Expert Comment

by:COAtheGREAT
ID: 6885641
You can insert UserForm in word document and plase on it timer control. On timer event do jour work. Your word macro just enables timer.
0
 
LVL 44

Expert Comment

by:bruintje
ID: 6886120
Hi srobia, instead of creating the process like that, for background processing i would use the shell command

http://support.microsoft.com/default.aspx?scid=kb;EN-US;q129796

word has some commandline switches and one of tehm is to start with a macro /m + macroname so for example WORKING_DIR & _ "\templates\" & s_reportlocation & " /m" & PopulateDocument

HTH:O)Bruintje
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Comment

by:srobia
ID: 6886760
bruintje -- I like the idea -- and I tried it.  However, I need to populate bookmarks from the VB application.  So unfortunately, I need to be able to launch word with a reference for the VB app to call and populate bookmarks.

COAtheGREAT -- can you give an example -- I think I understand I just want to make sure.  Thanks,
0
 
LVL 1

Expert Comment

by:COAtheGREAT
ID: 6886898
I am afraid i wos wrong i cant find the timer in word, but try to use idea if you can. Or you can use win api but it is harder way because you must create threed.
0
 
LVL 49

Expert Comment

by:DanRollins
ID: 7634218
Hi srobia,
It appears that you have forgotten this question. I will ask Community Support to close it unless you finalize it within 7 days. I will ask a Community Support Moderator to:

    Refund points and save as a 0-pt PAQ.

srobia, Please DO NOT accept this comment as an answer.
EXPERTS: Post a comment if you are certain that an expert deserves credit.  Explain why.
==========
DanRollins -- EE database cleanup volunteer
0
 
LVL 1

Accepted Solution

by:
kodiakbear earned 0 total points
ID: 7666093
Moving to the Paq

kb
Experts Exchange Moderator
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
Since upgrading to Office 2013 or higher installing the Smart Indenter addin will fail. This article will explain how to install it so it will work regardless of the Office version installed.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…

932 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now