I setup a word doc as a template with bookmarks where I wanted the various bits of the report. Here is a snippet (names changed to protect the guilty). It doesn't show error checking or dimensioning etc. but should give a feel for it. You will note I send a concatenated string for the table data and convert within Word on the fly
Set mydoc = ActiveDocument
Set myrange = ActiveDocument.Bookmarks("jobno"

.Range
myrange.InsertAfter Me.cboJobs.Text
Set myrange = ActiveDocument.Bookmarks("docno"

.Range
myrange.InsertAfter page$
Set myrange = ActiveDocument.Bookmarks("user"

.Range
myrange.InsertAfter username$
mystr = mystr & "Description$Qty$Value" & vbCrLf
For temp1 = 1 To count1 - 1
mystr = mystr & Me.lvwParts.ListItems(temp1).Text & "$" & Me.lvwParts.ListItems(temp1).SubItems(1) & "$" & Me.lvwParts.ListItems(temp1).SubItems(2) & "$" & vbCrLf
Next temp1
Set myrange = mydoc.Bookmarks("list"

.Range
myrange.InsertAfter mystr
With myrange
.ConvertToTable Separator:="$", _
NumColumns:=5, Format:=wdTableFormatGrid7, ApplyBorders:=True _
, ApplyShading:=True, ApplyFont:=True, ApplyColor:=True, ApplyHeadingRows _
:=False, ApplyLastRow:=False, ApplyFirstColumn:=False, ApplyLastColumn:= _
False, AutoFit:=True
End With
mydoc.PrintOut
________________________________________________________________
If you want to get the best response to a question, please check out FAQ222-2244 first
'People who live in windowed environments shouldn't cast pointers.'