Manipulating MS Word from Excel??

S

Simon Lloyd

Hi all i have some code below that opens Word adds a document and pastes
the contents of a range in to it, my problem is that i would like the
contents to be pasted on the right hand side if the document, thats
what the vbTab's are for below but it doesnt work it just hangs after
running that line........i'm no whizz at this so if anyone could give
me the correction i would be very grateful!

Regards,
Simon

Sub wrdstart()
Dim appwd As Object
On Error GoTo notloaded
Set appwd = GetObject(, "Word.Application")
notloaded:
If Err.Number = 429 Then
Set appwd = CreateObject("Word.Application")
End If
appwd.Visible = True
On Error GoTo 0
With appwd
..documents.Add
Selection.TypeText Text:=vbTab & vbTab & vbTab & vbTab & vbTab & vbTab
& _
vbTab & vbTab & vbTab
Range("A1:A5").Copy

..Selection.Paste

End With
End Sub
 
P

papou

Hello
Try:
appwd.Selection.TypeText Text:=vbTab & vbTab & vbTab & vbTab & vbTab & vbTab
vbTab & vbTab & vbTab

and
appwd.Selection.Paste

HTH
Cordially
Pascal


"Simon Lloyd" <[email protected]> a
écrit dans le message de (e-mail address removed)...
 
P

paul.robinson

Hi
This seems to do most of what you want

Sub wrdstart()
Dim appwd As Word.Application
Dim NewDoc As Word.Document
On Error GoTo notloaded
Set appwd = GetObject(, "Word.Application")
notloaded:
If Err.Number = 429 Then
Set appwd = CreateObject("Word.Application")
End If
appwd.Visible = True
On Error GoTo 0
Set NewDoc = appwd.Documents.Add
With NewDoc
.ActiveWindow.Selection.TypeText Text:=vbTab & vbTab & vbTab & vbTab
& vbTab & vbTab & _
vbTab & vbTab & vbTab
Range("A1:A5").Copy
..ActiveWindow.Selection.PasteExcelTable False, False, False
End With
End Sub

I'm no wizz either! The paste seems to go over the tabs, so you
probably need to set some property of the Selection object to stop that
and make the paste go to the end?

regards
Paul
 
S

Simon Lloyd

Thanks for your reply Papou, i had already tried that it still pastes
the information to the top left of the word document but i need it to
appear in the top right..............any other ideas?

regards,
Simon
 
E

Ed

SImon:

Once you're in Word, you have access to all of Word's properties and
methods. Why not set a Range to where you want to paste this, and then
use
Range.ParagraphFormat.Alignment wdAlignParagraphRight
to set it against the right edge? Much less messy than all those tabs.

Ed
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top