You are welcome.
>Thanks. I will lookup Word Visual Basic Help and I am trying to search for word constants in the downloads. I will also try the macro recording and hope I can make head or tail of the VBA script.
>
>Thanks for all your help, trouble you if I get struck.
>
>>Do not feel guilty: we all are in the very same boat in the MS sea of uncertaincy. For instance, trying to reproduce the example (I gave you) with Word97 I was surprised to learn, that
>>oWOrd.Selection.Range.Font.color=RGB(0,255,0) does not work there. Instead colorindex property should be used.
>>How did I find it? BAsically there are two ways:
>>1. You can record a macro in Word and then analyze the code and translate it to VFP.
>>2. In VFP7 and above you can type from command window:
>>?oWOrd.Selection.Range.Font. to see available properties, and if you type
>>?oWOrd.Selection.Range.Font.colorindex= , then you see the available values of this property.
>>
>>And all Word constants you can find in the download section here, I believe.
>>And the Word Object hierarchy you can find in the MS WOrd Visual Basic Help:
>>from Word, ALT+F11->Help.
>>
>>So now to your question.
>>To align the text you may use oWord.Selection.ParagraphFormat.Alignment property.
>>If you have two text pieces on the very same line, then probably you could format this particular line to two-columns and align them differently, or convert text to table and do alignment as needed. Try to record a macro to see what is better for you.
>>
>>
>>>This was a great example and I really appreciate your help. Now i am stuck at the following:
>>>
>>>
WITH .activedocument.content
>>> .insertafter("Ref.: " + lcrefno)
>>> ENDWITH
>>>
>>> .SELECTION.EndKey(wdStory)
>>>
>>> WITH .SELECTION.RANGE
>>> .style = 0
>>> .style = 1
>>> .style = 2
>>> .style = 3
>>> .style = 4
>>> .style = 5
>>> .style = 6
>>> .style = 7
>>> .style = 8
>>> .style = 9
>>> .style = 10
>>> ENDWITH
>>>
>>>Which style will work, none of the above do. I needed right aligning the text. Also what if there is 2 pieces of text on a line one left and the other right aligned.
>>>
>>>Is there any documentation to refer where I can find the properties. I feel guilty to keep on troubling you so, even after you have given me such a fine example.
>>>
>>>Please advise.
>>>
>>>>Please follow this example. It should cover your both latest questions
>>>>
>>>>>
>>>>crlf = CHR(13)+CHR(10)
>>>>
>>>>wdStory=6
>>>>wdExtend =1
>>>>wdSectionBreakNextPage=2
>>>>wdHeaderFooterPrimary=1
>>>>Wdheaderfooterfirstpage=2
>>>>
>>>>oWord = CREATEOBJECT("Word.Application")
>>>>
>>>>with oWord
>>>> .documents.ADD()
>>>> .visible=.t.
>>>>
>>>> with .activedocument.content
>>>> .insertafter("Test procedure:"+crlf+crlf)
>>>> endwith
>>>>
>>>> .Selection.EndKey(wdStory)
>>>>
>>>> with .activedocument.content
>>>> .insertafter("Text Line1 Font Bold Red Courier New " +crlf)
>>>> endwith
>>>> .Selection.EndKey(wdStory, wdExtend)
>>>> WITH .Selection.Range.Font
>>>> .NAME = "Courier New"
>>>> .bold = .T.
>>>> .color=RGB(255,0,0)
>>>> ENDWITH
>>>>
>>>> .Selection.EndKey(wdStory)
>>>>
>>>>* start another section, needed only to use different footer-headers in the future
>>>> .Selection.InsertBreak(wdSectionBreakNextPage)
>>>>
>>>> .Selection.EndKey(wdStory)
>>>>
>>>> with .activedocument.content
>>>> .insertafter("Text Line2 Font Green Times New Roman " +crlf)
>>>> endwith
>>>> .Selection.EndKey(wdStory, wdExtend)
>>>> WITH .Selection.Range.Font
>>>> .NAME = "Times New Roman"
>>>> .bold = .f.
>>>> .color=RGB(0,255,0)
>>>> ENDWITH
>>>> .Selection.EndKey(wdStory)
>>>>
>>>> .Selection.EndKey(wdStory)
>>>>
>>>>* HEADER FOOTER
>>>> .ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter = .f.
>>>>
>>>> with .ActiveDocument.Sections(1)
>>>> .Headers(wdHeaderFooterPrimary).Range.Text = "1Header text"
>>>> .Footers(wdHeaderFooterPrimary).Range.Text = "1Footer text"
>>>> endwith
>>>>
>>>> with .ActiveDocument.Sections(2)
>>>> .Headers(wdHeaderFooterPrimary).LinkToPrevious = .f.
>>>> .Footers(wdHeaderFooterPrimary).LinkToPrevious = .f.
>>>> .Headers(wdHeaderFooterPrimary).Range.Text = "2Header text"
>>>> .Footers(wdHeaderFooterPrimary).Range.Text = "2Footer text"
>>>> .Footers(wdHeaderFooterPrimary).Range.Font.Color=RGB(100,200,50)
>>>>
>>>> endwith
>>>>
>>>> .activedocument.SAVEAS("c:\myword.doc")
>>>> .activedocument.CLOSE
>>>>endwith
>>>>
>>>>oWord.QUIT()
>>>>oWord=.null.
>>>>release oWord
>>>>>
>>>>
>>>>>Hi Yuri. Thanks for your help.
>>>>>
>>>>>I have a yes and no kind of situation. The following line gives an error:
>>>>>
>>>>>>lnstart=.Range.Start
>>>>>
>>>>>Message: Member RANGE does not evaluate to an object.
>>>>>
>>>>>I am able to use the following line:
>>>>>
>>>>>.insertafter("this is the text")
>>>>>
>>>>>Please advise. I am using Word2K for this. What am I doing wrong.