ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Inserting selected range into Word document (https://www.excelbanter.com/excel-programming/279558-inserting-selected-range-into-word-document.html)

Ed Stevens[_2_]

Inserting selected range into Word document
 
Using examples previously found here and on MS website, I'm able to
get my macro to start Word , open a new document., and insert some
text into that document. Now I need to be able to insert a range of
selected cells. My first cut was this:

Sub createDoc()

Dim wordApp As Word.Application
Dim wordDoc As Word.Document
Dim wordRng As Word.Range
Dim wordPara As Word.Paragraph

Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True

With wordApp
.WindowState = wdWindowStateMaximize
.Documents.Add
Set wordDoc = wordApp.ActiveDocument
Set wordRng = wordDoc.Range

With wordRng

' this works
.InsertAfter "Running Word Using Automation"
' this doesn't
.InsertAfter range(cells(1,1),cells(lngLastRow,lngLastCol))
'nor does this
.InsertAfter
range(cells(1,1),cells(lngLastRow,lngLastCol)).sel ect
<snip rest of code



So, I need someone to get me back on track

Thanks in advance.



Debra Dalgleish

Inserting selected range into Word document
 
The following code will insert a line of text, then the selected range
from Excel:

Sub CreateDoc()
Dim WdApp As Object

Selection.Copy
On Error Resume Next
Set WdApp = GetObject(, "Word.Application")
If Err.Number < 0 Then
Err.Clear
Set WdApp = CreateObject("Word.Application")
End If

With WdApp
.Visible = True
.Documents.Add DocumentType:=0
.Selection.TypeText "Running Word Using Automation"
.Selection.TypeParagraph
.Selection.TypeParagraph
.Selection.Paste
End With
Set WdApp = Nothing

End Sub

Ed Stevens wrote:
Using examples previously found here and on MS website, I'm able to
get my macro to start Word , open a new document., and insert some
text into that document. Now I need to be able to insert a range of
selected cells. My first cut was this:

Sub createDoc()

Dim wordApp As Word.Application
Dim wordDoc As Word.Document
Dim wordRng As Word.Range
Dim wordPara As Word.Paragraph

Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True

With wordApp
.WindowState = wdWindowStateMaximize
.Documents.Add
Set wordDoc = wordApp.ActiveDocument
Set wordRng = wordDoc.Range

With wordRng

' this works
.InsertAfter "Running Word Using Automation"
' this doesn't
.InsertAfter range(cells(1,1),cells(lngLastRow,lngLastCol))
'nor does this
.InsertAfter
range(cells(1,1),cells(lngLastRow,lngLastCol)).sel ect
<snip rest of code



So, I need someone to get me back on track

Thanks in advance.




--
Debra Dalgleish
Excel FAQ, Tips & Book List
http://www.contextures.com/tiptech.html


Ed Stevens[_2_]

Inserting selected range into Word document
 
On Tue, 14 Oct 2003 17:31:12 -0400, Debra Dalgleish
wrote:

The following code will insert a line of text, then the selected range
from Excel:

Sub CreateDoc()
Dim WdApp As Object

Selection.Copy
On Error Resume Next
Set WdApp = GetObject(, "Word.Application")
If Err.Number < 0 Then
Err.Clear
Set WdApp = CreateObject("Word.Application")
End If

With WdApp
.Visible = True
.Documents.Add DocumentType:=0
.Selection.TypeText "Running Word Using Automation"
.Selection.TypeParagraph
.Selection.TypeParagraph
.Selection.Paste
End With
Set WdApp = Nothing

End Sub

Ed Stevens wrote:
Using examples previously found here and on MS website, I'm able to
get my macro to start Word , open a new document., and insert some
text into that document. Now I need to be able to insert a range of
selected cells. My first cut was this:

Sub createDoc()

Dim wordApp As Word.Application
Dim wordDoc As Word.Document
Dim wordRng As Word.Range
Dim wordPara As Word.Paragraph

Set wordApp = CreateObject("Word.Application")
wordApp.Visible = True

With wordApp
.WindowState = wdWindowStateMaximize
.Documents.Add
Set wordDoc = wordApp.ActiveDocument
Set wordRng = wordDoc.Range

With wordRng

' this works
.InsertAfter "Running Word Using Automation"
' this doesn't
.InsertAfter range(cells(1,1),cells(lngLastRow,lngLastCol))
'nor does this
.InsertAfter
range(cells(1,1),cells(lngLastRow,lngLastCol)).sel ect
<snip rest of code



So, I need someone to get me back on track

Thanks in advance.


That got me where I needed to go. Thanks for the assistance.


All times are GMT +1. The time now is 04:24 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com