Prueba esta sub para el commandbutton:
Código vb:
Ver originalPrivate Sub Command1_Click()
On Error GoTo ErrSub
Dim o_Word As Word.Application
Dim Documento As Word.Document
Dim c As Integer ' columna
Dim f As Long ' fila
Dim dato As Variant ' valor de la celda del datagrid
' Establece la referencia al Word
Set o_Word = New Word.Application
' Pone el Word visible
o_Word.Visible = True
'Abrimos el documento "archivoWord.doc" con Open
Set Documento = o_Word.Application.Documents.Open(App.Path + "\archivoWord.doc")
'Nos vamos al marcador llamado "tabla" en el documento, _
para insertar la tabla en ese punto
o_Word.Selection.GoTo What:=wdGoToBookmark, Name:="Tabla"
With Documento
'Agregamos la tabla dentro de Word con las _
filas y columnas que tenga el datagrid
.Tables.Add Range:=o_Word.Selection.Range, _
NumRows:=DataGrid1.ApproxCount + 1, _
NumColumns:=DataGrid1.Columns.Count
'Recorremos el Data Grid para agregar las columnas y filas a nuestra tabla
For c = 0 To DataGrid1.Columns.Count - 1
DataGrid1.Row = 0
.Tables(1).Cell(1, c + 1).Range.InsertAfter _
DataGrid1.Columns(c).Caption 'agregar columnas
' recorre las filas de la columna actual
For f = 0 To DataGrid1.ApproxCount - 1
' almacena el dato de la celda del datagrid de la columna actual
dato = DataGrid1.Columns(c).CellValue(DataGrid1.GetBookmark(f))
' agrega el dato a la celda de la tabla
.Tables(1).Cell(f + 2, c + 1).Range.InsertAfter dato
Next f
Next c
End With
'Descargamos los objetos
Set o_Word = Nothing
Set Documento = Nothing
Exit Sub
ErrSub:
MsgBox Err.Description, vbCritical
On Error Resume Next
Set o_Word = Nothing
Set Documento = Nothing
End Sub
Saludos