Microsoft KB Archive/161197

= How To Automate a Word Object Embedded in a Form =

Article ID: 161197

Article Last Modified on 6/29/2004

-

APPLIES TO


 * Microsoft Visual FoxPro 5.0 Standard Edition
 * Microsoft Visual FoxPro 6.0 Professional Edition

-



This article was previously published under Q161197



SUMMARY
This article provides an example of how to programmatically update an OLE object embedded within a Word document. This example uses both Visual FoxPro 5.0 and Microsoft Word for Windows 95 version 7.0a.



MORE INFORMATION
The sample creates a new form and adds a Word object to that form. Next, the code activates the Word object to get a reference to its WordBasic object, deactivates it, and then automates the WordBasic object. The important part of this code is the temporary activation of Word. The object embedded in a form is called "Document." Unfortunately, Word does not support the object "Word.Document" through OLE Automation, but Word does support the object "WordBasic." The following line of code saves a reference to the object contained within the Word document: oWordRef = oForm.oWordDoc.Object.Application.WordBasic This allows a programmer to update the object.

Please see the REFERENCES section of this article for additional information.

Code Example
Place the following code in a program file and run it: #DEFINE CRLF CHR(13)+CHR(10) PUBLIC oForm oForm = CREATE('form') oForm.AddObject('oWordDoc','OleControl','WordDocument') oForm.oWordDoc.Height = 100 oForm.oWordDoc.Width = 300 oForm.oWordDoc.Visible = .t.   oForm.Show oForm.oWordDoc.DoVerb(0) oWordRef = oForm.oWordDoc.Object.Application.WordBasic MOUSE CLICK AT 0,0 oWordRef.Insert("Hello World"+CRLF) oWordRef.EditSelectAll oWordRef.Font("Arial",18) oWordRef.Bold oWordRef.EditGoTo("\EndofDoc") oWordRef.WordLeft(3) oWordRef.SelectCurWord oWordRef.CharColor(2) RETURN This code will replace the Visual FoxPro toolbars with the Word toolbars in order to edit the embedded Word object.

